Как выбрать заказы из связанной таблицы с условием?
Есть две таблицы
orders
-id
-name
order_product
-id
-order_id
-importance
Как получить все записи order, где order_product importance либо все нули, либо все единицы и нули.
Если все order_product importance 1, то такой заказ исключить
Дополнительно:
Учимся использовать конструкцию WHERE EXISTS / NOT EXISTS
select * from orders where exists ( select 1 from order_product where order_id = orders.id and importance = 0 ); |
select * from orders where exists ( select 1 from order_product where order_id = orders.id and importance = 0 );
MySQL WHERE EXISTS test
- Slava Rozhnev Спасибо большое, я так скоро весть sql выучу)
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для выбора заказов из связанной таблицы с условием вам необходимо воспользоваться оператором JOIN в SQL. Предположим, у вас есть две таблицы: таблица "заказы" (orders) и таблица "пользователи" (users), причем каждый заказ принадлежит определенному пользователю.
Для выборки заказов из таблицы "заказы" с условием, связанным с таблицей "пользователи", вы можете использовать следующий SQL запрос:
SELECT orders.* FROM orders JOIN users ON orders.user_id = users.id WHERE users.name = 'Имя пользователя';
В данном запросе мы используем оператор JOIN для объединения таблицы "заказы" и таблицы "пользователи" по условию, что идентификатор пользователя в таблице "заказы" равен идентификатору пользователя в таблице "пользователи". Затем мы добавляем условие, что имя пользователя равно определенному значению ('Имя пользователя' в данном случае).
Если вы хотите выбрать заказы с условием, связанным с другими столбцами таблицы "пользователи", вы можете изменить условие в операторе WHERE соответствующим образом.
Таким образом, используя оператор JOIN в SQL, вы можете легко выбирать заказы из связанной таблицы с различными условиями, связанными с другими таблицами в вашей базе данных.