Есть ли способ, чтобы запрос возвращал либо «Y», либо «N» для столбца, если этот столбец имеет значение выше определенного числа «25».Y или N в результате SQL
Я использую DB2 на ЗР
Есть ли способ, чтобы запрос возвращал либо «Y», либо «N» для столбца, если этот столбец имеет значение выше определенного числа «25».Y или N в результате SQL
Я использую DB2 на ЗР
SELECT CASE WHEN Col1 > 25 THEN 'Y' ELSE 'N' END As Value1
FROM Table1
Для MySQL:
SELECT IF(column > 25, 'Y', 'N')
FROM table
http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html#function_if
Используйте SQL сазе
Существует IF
блок для SQL.
http://sqltutorials.blogspot.com/2007/06/sql-ifelse-statement.html
SELECT CASE WHERE columnname > 25 THEN 'Y' ELSE 'N' END FROM table;
select
case when somecolumn > 25 then 'Y' else 'N' end as somename
from sometable;
Select If(myColumn > 25, 'Y', 'N') From myTable
Помимо утверждений IF и CASE-другой реальной альтернативой является создание определенной пользователем функции подачи в вашем значении столбца и возвращающейся Y или N .
Это имеет незначительное преимущество tage, который, если вы выберете этот критерий более чем на SQL-заявлении, а на более позднем этапе ваше состояние изменится - до более 30 слов - тогда у вас есть только одно место для изменения вашего кода. Хотя использование функции добавляет сложности и накладные расходы, поэтому не всегда оптимально, не стоит недооценивать преимущества обслуживания этого подхода. Небольшой плюс - вы можете сделать имя функции чем-то более значимым и, следовательно, самодокументирующимся, чем встроенный CASE
Вам необходимо указать, какую версию/реализацию SQL вы используете (Oracle/SQL Server/MySQL и т. Д. .) –
Извините ... Это был DB2 zos –