Я использую SQL-сервер. У меня есть следующая таблицаSQL - выберите другую строку, если первая строка выбора возвращает пустую
Name Number
A 123
B 456
C 789
D 000
Я даюсь 2 названия. Я хочу написать инструкцию sql, чтобы я мог проверить, существует ли первое имя в таблице.
- Если это так, sql возвращает строку с первым именем.
- Если нет, он проверяет второе имя. Если строка со вторым именем найдена, то вернет эту строку.
- Если оба названия не найден, то возвращается пустая
Например,
- если 'A', 'C' заданы, то оператор SQL должен возвращать строку с названием «A ' только.
- Если заданы «G», «B», он должен сначала проверить «G», но не найти, а затем вернуть строку с именем «B», потому что она найдена.
- если «X», «Y» заданы, то она должна возвращать пустую строку
Что такое SQL заявление наиболее эффективным но общим для достижения? (То, что я подразумеваю под «generic», это то, что я хочу написать оператор sql, который подходит для большинства типов Retional SQL DB, а не только для SQL-сервера)
Заранее благодарен!
ОБНОВЛЕНИЕ: Я подразумеваю возврат «без строк» при произнесении «пустой строки». Прошу прощения за неправильную формулировку.
Как эти значения «дано» ?, как прикажете их? – Lamak
не было бы проще сделать 'where name in ('a', 'b')' order by ... 'type вещь и выбросить строки, которые вы не хотите? –
И почему ваш запрос должен возвращать пустую строку, если строки не найдены? Это не имеет никакого смысла для меня. –