Форум: "Начинающим";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];
ВнизПомогите с запросом Найти похожие ветки
← →
Yurij-7 (2007-11-16 14:17) [0]Уважаемые мастера, помогите с запросом
есть табличка с полями филиал, продукт, продано, пользуется, возврат
мне надо инф вывести одним запросом, так :
Филиал продано, пользуется, возврат
А1 5 3 2
SELECT [филиал], count ([продано]) as col_vud, count ([пользуется])as col_act, count ([возврат])as col_closed FROM [K3_BKK].[dbo].[K3_zalej_All]
group продано, пользуется, возврат
а оно затраивает филиалы и пишет разную чужь, это вообще реально прокатать одним запросом?
огромное спасибо
← →
Andrey © (2007-11-16 14:23) [1]SELECT [филиал], count ([продано]) as col_vud, count ([пользуется])as col_act, count ([возврат])as col_closed FROM [K3_BKK].[dbo].[K3_zalej_All]
group by [филиал]
Читать синтаксис предложения group by.
← →
Yurij-7 (2007-11-16 14:31) [2]Огромное спасибо за помощь, обязательно почитаю, решил только увижу книгу Грубера в печатном виде сразу покупаю
а если можно еще вопрос, можно ли както сделать одним запросом сложный апдейт ?
UPDATE [K3_BKK].[dbo].[K3_zalej_All]
SET [продано]= "1"
WHERE
ref in ( SELECT [REFCONTRAC] FROM [K3_BKK].[dbo].[K3_15_11] where left (ito_col, 1) <> 2
group by refcontrac)
UPDATE [K3_BKK].[dbo].[K3_zalej_All]
SET [пользуются]= "1"
WHERE
ref in ( SELECT [REFCONTRAC] FROM [K3_BKK].[dbo].[K3_15_11] where pol <> 0
group by refcontrac)
← →
Yurij-7 (2007-11-16 14:39) [3]или апдейт лучше выносить в ХП ??
← →
Andrey © (2007-11-16 14:41) [4]Т.к. MSSQL видел в глаза всего пару раз, не могу сказать со всей увереностью... Но стандарты SQL таких фокусов не позволяют.
Если бы предложение WHERE было полностью одинаково, тогда пожалуйста. А так по идее никак.
← →
Andrey © (2007-11-16 14:46) [5]Куда выносить апдейт, это уже архитектурный вопрос.
Есть мнение, что доступ к данным следует осуществлять только через обновляемые въюхи.
Есть мнение, что в процедуры следует складывать только критическую бизнес-логику.
Правда как всегда где-то между )
Вобщем на сколько я понимаю, эта программа одна из первых ваших по работе с БД. Изучайте, думайте, пробуйте, ошибайтесь, выбирайте )
← →
Ega23 © (2007-11-16 14:54) [6]
> Есть мнение, что доступ к данным следует осуществлять только
> через обновляемые въюхи.
Есть мнение, что сколько людей - столько и мнений.
← →
Sergey13 © (2007-11-16 14:59) [7]> [0] Yurij-7 (16.11.07 14:17)
А какой смысл считать много count по разным полям? Я бы понял sum, но count!
← →
Yurij-7 (2007-11-16 15:00) [8]Я понял, спасибо за консультации,
кстати еще в чем столкнулся, что Substring в стандартной конструкции (SUBSTRING("ABCDE" FROM 2 FOR 3)) в MSSQL не работает, но почему так и не понял :((( ?
← →
ЮЮ © (2007-11-17 12:00) [9]
> , но почему так и не понял :((( ?
по синтаксису. Приведенная тобой конструкция годится для Local SQL. В BOL заглянуть не пробовал?
← →
Anatoly Podgoretsky © (2007-11-17 14:01) [10]Гадать не надо, надо смотреть правила синтаксиса в BOL - настольная книга программиста в MS SQL
← →
Yurij-7 (2007-12-03 16:54) [11]Для
Sergey13 © (16.11.07 14:59) [7]
> [0] Yurij-7 (16.11.07 14:17)
А какой смысл считать много count по разным полям? Я бы понял sum, но count!
Да все дело в том что признаки в этих полях проставляются "1", вот я и считаю количество единиц
Для
ЮЮ © (17.11.07 12:00) [9]
> , но почему так и не понял :((( ?
по синтаксису. Приведенная тобой конструкция годится для Local SQL. В BOL заглянуть не пробовал?
Ага, спасибо, разобрался
Для
Anatoly Podgoretsky © (17.11.07 14:01) [10]
Гадать не надо, надо смотреть правила синтаксиса в BOL - настольная книга программиста в MS SQL
Спасибо, нашел книгу М. Грубера
← →
Anatoly Podgoretsky © (2007-12-03 18:52) [12]Не знал, что Грубер БОЛ написал.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c