Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Составление SQL-запросов > Отдельное условие для каждой колонки |
Автор: Riddik 12.1.2009, 11:30 | ||||
table1: kolonka1 kolonka2 15 0 2 1 78 2 214 3 123 4 Вот запрос:
А нужно чтобы вторая колонка сформировалась по другому условию:
И таких колонок несколько. Как это сделать? |
Автор: skyboy 12.1.2009, 11:41 | ||
два запроса. так корректнее - по смыслу разные данные забираем разными запросами. или через union:
|
Автор: pizzz 12.1.2009, 11:44 |
AND `kolonka2`< '7 ' OR `kolonka2`= '7 ' и так далее |
Автор: Riddik 12.1.2009, 11:47 |
Тогда получается не две колонки, а две строчки! А как сделать, чтобы именно две колонки было? Добавлено через 25 секунд pizzz, сейчас попробую Добавлено через 7 минут и 44 секунды pizzz, всё равно в обоих колонках одинаково получается |
Автор: Zloxa 12.1.2009, 17:59 | ||
|
Автор: Deniz 13.1.2009, 08:52 | ||
Если нет case
|
Автор: Riddik 13.1.2009, 09:48 |
Zloxa, большое спасибо, всё получилось! Deniz, тоже спасибо! |
Автор: Nikolja 30.6.2010, 16:37 | ||||||
Или немного проще. Чем ТАКОЙ пример хорош, что он будет работать, думаю, в ЛЮБОЙ версии SQL. (Тот же case, как в примере выше, работает не везде.) Чтобы исключить повторения, можно использовать ключевое слово DISTINCT. Например: отдельные условия для каждой колонки 1) в 1-ой колонке суммируем числа, меньшие 20-ти 2) во 2-ой колонке суммируем числа, меньшие 4-х Тоже получаем итог, как и надо - в ОДНОЙ строке, и в РАЗНЫХ колонках.
А так - вывести сначала ВСЕ числа, а в последней строчке - сумму нужных чисел (согласно заданных условий).
|
Автор: Frees 30.6.2010, 20:00 | ||
может как то так? |