SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 16.04.2011 14:07:07

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Значение по умолчанию, если не одна из записей не удовлетворяет значению

Здравствуйте.
Есть запрос:

select * from `tb` where id=2;

как сделать что бы по умолчанию поиск производился например id=1, если с id=2,3...n не будет результата?
в принципе можно сделать:
select * from `tb` where id=(if((select count(*) from `tb` where id=2)=0,1,2);

ток с запросами в несколько таблиц получится огромный запутанный запрос, в друг есть лучший способ?

Отредактированно Марк (16.04.2011 14:09:22)

Неактивен

 

#2 16.04.2011 21:40:28

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Значение по умолчанию, если не одна из записей не удовлетворяет значению

А почему Вы не хотите реализовать это в клиентском приложении?

Можно, например, выбирать данные
WHERE id IN (2, 1) ORDER BY id DESC LIMIT 1

Неактивен

 

#3 16.04.2011 23:55:30

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Re: Значение по умолчанию, если не одна из записей не удовлетворяет значению

Спасибо... вариант, тока боюсь при больших объёмах будет медленно работать из за order by ))

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson