SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 10.09.2011 19:08:57

vanq
Участник
Зарегистрирован: 03.02.2011
Сообщений: 6

Выполнение одного условия при условии выполнения второго :)

Добрый день, есть необходимость в выполнении одного условия при условии выполения второго smile Звучит запутано, не могу никак реализовать такой запрос.

Есть 2 таблицы, которые объединяются INNER JOIN по связному полю. Мне нужно сделать что-то по типу (синтаксис не правильный сразу говорю, читал мануал, но всегда получал ошибку):

SELECT * FROM tbl_users INNER JOIN tbl_items ON tbl_users.user_id = tbl_items.user_id WHERE CASE (tbl_users.user_balance != NULL) than "tbl_users.user_balance >= tbl_items.costs" ELSE "tbl_items.costs > 0"


То есть, объединяем 2 таблицы, и делаем выбор всех полей таблицы юзеров, где в случае, (если баланс юзера не NULL) то "баланс юзера >= стоимость вещи" иначе "стоимость вещи больше 0".

Получаем, что при выполнении одного условия подставляем одно условие, при невыполнении другое. Как правильно оформить такой запрос? smile

Неактивен

 

#2 11.09.2011 22:33:34

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

Re: Выполнение одного условия при условии выполнения второго :)

Напишите так же, как написали словами?

WHERE (user_balance IS NOT NULL AND user_balance >= costs) OR (user_balance IS NULL AND costs > 0)

Неактивен

 

#3 16.09.2011 20:13:39

vanq
Участник
Зарегистрирован: 03.02.2011
Сообщений: 6

Re: Выполнение одного условия при условии выполнения второго :)

Извиняюсь, совсем забыл, что запостил здесь тему.

Действительно, решение очень простое, спасибо, что открыли глаза)

Неактивен

 

Board footer

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