@oliyanamega

Как сформировать sql запрос для выборки из двух таблиц?

Имеется две таблицы:
1. id|title|description
2. id|id_iz_pervoi_tablici|flag

Помогите сформировать sql запрос, который вернет строки из первой таблицы, только те у которых flag во второй будер равен 0.
id = id_iz_pervoi_tablici. Крайне желательно что бы это был один sql запрос
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ответы на вопрос 3
@immelnikoff
Изучаю БД
Для MySQL 8.0:
SELECT * FROM `t1` WHERE `id` IN (SELECT `id_iz_pervoi_tablici` FROM `t2` WHERE `flag`=0)

Более быстрый вариант (но это не точно):
SELECT * FROM `t1` WHERE EXISTS (SELECT * FROM `t2` WHERE `t1`.`id` = `t2`.`id_iz_pervoi_tablici` AND `flag`=0)
Ответ написан
Target1
@Target1
SELECT * FROM `t1` 
  LEFT JOIN (SELECT * FROM `t2` WHERE `flag`=0)  AS `t2`
  ON `t1`.`id` = `t2`. `id_iz_pervoi_tablici`
Ответ написан
Комментировать
erge
@erge
Примус починяю
SELECT t1.*
  FROM t1
  JOIN t2 ON t2.id_iz_pervoi_tablici = t1.id
  WHERE t2.flag = 0
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы