Форум: "Базы";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
ВнизКак составить SQL запрос Найти похожие ветки
← →
AndrewK (2002-02-15 14:20) [0]Подскажите пожалуйста как можно составить запрос, который выводит записи следующего вида.
Есть таблиц
ID Order WasPayed WasLoaded
1 Name1 0 0
2 Name2 1 1
3 Name3 0 0
4 Name4 1 0
Поля WasPayed хранит информацию об оплате заказа (0 - не оплачено, 1 - оплачено), аналогично поле WasLoaded хранит информацию об огрузках.
Как с помощью SQL запроса можно получить набор с заменой 0 и 1 на соответствуюшие слова. Например:
ID Order WasPayed WasLoaded
1 Name1 Не оплачено Не отгружено
2 Name2 Оплачено Отгружено
...
← →
Дима566 (2002-02-15 14:23) [1]$100
← →
AndrewK (2002-02-15 14:43) [2]Что этот вопрос того стоит?
← →
Johnmen (2002-02-15 14:43) [3]SELECT ID,Order,"Не оплачено" AS WasPayed,"Не отгружено" AS WasLoaded WHERE (WasPayed=0) and (WasLoaded=0)
UNION
SELECT ID,Order,"Оплачено " AS WasPayed,"Отгружено " AS WasLoaded WHERE (WasPayed=1) and (WasLoaded=1)
UNION
SELECT ID,Order,"Не оплачено" AS WasPayed,"Отгружено " AS WasLoaded WHERE (WasPayed=0) and (WasLoaded=1)
UNION
SELECT ID,Order,"Оплачено " AS WasPayed,"Не отгружено" AS WasLoaded WHERE (WasPayed=1) and (WasLoaded=0)
← →
Fay (2002-02-17 03:17) [4]SELECT
[ID],
[ORDER],
[WasPayed] = CASE WasPayed WHEN 0 THEN "Не оплачено" ELSE "Оплачено" END,
[WasLoaded] = CASE WasLoaded WHEN 0 THEN "Не отгружено" ELSE "отгружено" END
FROM [Твоя Таблица]
WHERE [Где мои $100] = [Где мои $100]
← →
Dragon21 (2002-02-17 12:01) [5]Не совсем уверен, что будет работать на MSSQL проверить не где, но на Oracle работает. Я думаю что на крайний случай должна быть похожая функция и в MSSQL.
SELECT ID, ORDER, DECODE (WasPayed,"0","Не оплаченно","Оплаченно"),DECODE (WasLoaded,"0","Не отгруженно","Отгруженно") FROM Table1
← →
Севостьянов Игорь (2002-02-17 22:42) [6]Ответ зависит от СУБД
ответ же от Johnmen в принципе универсален
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c