|
|
|
Forum Member
      
участник
Last Login: 05.06.2006 10:15
Сообщ.: 38,
Visits: 423
|
|
Всем привет! есть простой запрос Select id, name1, name2 from table1 order by name1. в талблице, в поле name2 идут значения 1 и 0. тип - целое как сделать так, чтобы при запросе, в этом поле, вместо 1 и 0 выводились ДА и НЕТ (т.е. 1-да, 0 - нет) я пытался сделать через IF, но ругается... Select id, name1, if(name2 = 1) Then name2 = ДА Else name2 = Нет from table1 order by name1
можно ли вообще использовать IF в selecte. если нет, то как сделать можно?... приведите пример. Пасибо!
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Не знаю, как в Oracle, а в MS SQL работает следующий синтаксис: Select id, name1, name2 = CASE WHEN name2 = 0 THEN 'Нет' ELSE 'Дa' END from table1 order by name1 P.S. Я удалил твой аналогичный вопрос из общего форума по БД. Пожалуйста, не надо заниматься кросс-постингом. Если у тебя вопрос по Oracle, то и задавай его только в нужном тебе форуме. Спасибо.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 06.05.2006 8:46
Сообщ.: 244,
Visits: 2 687
|
|
Magik (01.06.2006)как сделать так, чтобы при запросе, в этом поле, вместо 1 и 0 выводились ДА и НЕТ (т.е. 1-да, 0 - нет) я пытался сделать через IF, но ругается...
Select id,name1,decode(name2,1,'Да',0,'Нет') from table1 order by name1
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.10.2007 4:11
Сообщ.: 219,
Visits: 1 804
|
|
| В Oracle CASE так же точно работает, только name2= перед case не надо, а после END поставить as name2
|
|
|
|