Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Топик располагается на нескольких страницах: ←Ctrl назад 1 [2] 3 вперед Ctrl→ все |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
|
||||
25 апр 13, 16:20 [14231048] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Мда. Что "для февраля" то ? select * from mytable where "для февраля" ? или select "для февраля" from mytable ? |
||
25 апр 13, 16:22 [14231066] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||||
25 апр 13, 16:22 [14231067] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||||
25 апр 13, 16:29 [14231099] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
Стейтмент SELECT... определяется во время компиляции кода, там вы указываете набор выходных столбцов, и их в процессе выполнения менять нельзя. Можно составлять весь ваш запрос как строку во время выполнения программы, а потом давать команду скомпилировать её и выполнить, см. "Динамический SQL" (EXEC). Но это конечно, менее удобно, производительно, и требует дополнительных прав для того, кто будет исполнять код. Лучше обойтись более традиционными способами программирования. |
||
25 апр 13, 16:30 [14231104] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
Вы писали:
То есть вам достаточно выполнить select * from таблица, и будут выведены все записи и за февраль, и за март, и вообще за все месяцы. Т.е. запрос для любых дат (для оддного дня или для 10 лет) получается одинаковый. Как я понял. |
||||||
25 апр 13, 16:33 [14231139] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
alexeyvg,
Приложу запрос, чтоб понятнее было.
|
|||||
25 апр 13, 16:45 [14231264] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||
25 апр 13, 16:47 [14231284] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
И откуда сервер узнает, что должен показать в этом году 28 полей, а в висакосном - 29 ? |
||||
25 апр 13, 16:49 [14231300] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
Если "да", то нужно просто выполнить запрос select * from таблица, и всё.
(select val from t2 where type='B16') as [B16] Выведет случайную запись из t2, для которой выполняется условие type='B16', если конечно type не является ключём этой таблицы. |
||||||||
25 апр 13, 16:52 [14231334] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||
25 апр 13, 16:53 [14231341] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Ну так узнайте. Как там в вашей теории по фразе where определяется количество полей в результате ? |
||
25 апр 13, 16:55 [14231351] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
[quot Glory]
Я сказал, что больше похоже. В идеале должно быть условие "если февраль, то", иначе. Но, как это "навесить"- загадка :) |
||
25 апр 13, 17:04 [14231427] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47063 |
![]() 2100-й год високосный? |
||
25 апр 13, 17:05 [14231436] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||||
25 апр 13, 17:06 [14231441] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Придумать свою базу. С блэкджеком и ... своей теорией. |
||
25 апр 13, 17:08 [14231457] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
Да. Скажите, нет? |
||
25 апр 13, 17:10 [14231473] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47063 |
|
||||
25 апр 13, 17:10 [14231477] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Вискосоный, високсоный. По вашей теории. |
||||
25 апр 13, 17:11 [14231481] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||
25 апр 13, 17:12 [14231483] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47063 |
|
||||
25 апр 13, 17:12 [14231488] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
Я так и не понял, что вам надо, но вряд ли вы пишете запросы для вывода случайных записей в произвольном порядке :-) |
||||
25 апр 13, 17:13 [14231494] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
|
||
25 апр 13, 17:16 [14231509] Ответить | Цитировать Сообщить модератору |
Прогер_самоучка Member Откуда: Сообщений: 68911 |
Понял вас. Вот так вроде бы будет правильней:
|
|||
25 апр 13, 17:48 [14231691] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31822 |
Остаётся вопрос, почему нельзя использовать вместо этого запроса более простой, универсальный и быстрый: Select t3.M, t3.Y,t2.ID_M, t3.BID, t3.SMID, t2.type, t2.val from t2, t3 where t3.Id=t2.id_mОн же выведет те же самые данные? |
||
25 апр 13, 18:17 [14231791] Ответить | Цитировать Сообщить модератору |
Топик располагается на нескольких страницах: ←Ctrl назад 1 [2] 3 вперед Ctrl→ все |
Все форумы / Microsoft SQL Server | ![]() |