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

Как я мог выбрать * из таблицы movies, где seeds > 10 в таблице torrents? Таблица movies имеет уникальный id, а таблица торрентов — id, совпадающую с идентификатором фильма. Для каждого фильма существует несколько торрентов, и следует выбрать только тот, у которого сидов больше 10.

Единственный sql, который у меня есть, это удаление всех фильмов, у которых нет торрентов.

DELETE FROM movies WHERE NOT EXISTS ( SELECT id FROM torrents WHERE id=movies.id)

Я не очень хорошо разбираюсь в MySQL на этом уровне, даже с этим примером, который я также взял отсюда.

Помощь будет очень признательна.

Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
0
25
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

что-то вроде следующего:

select *
from movies m
where exists (
  select * from torrents t
  where t.id = m.id and t.seeds > 10
);

Теперь это объясняет некоторые вещи. Имея несколько примеров, которые я получил, я смог понять, как это работает, и могу сделать его сам. Большое спасибо всем.

Benjamin 04.05.2022 19:38

id с торрентов, где сиды > 10

select * from movies where movie_id in (select id from torrents where seeds > 10);

вы также можете написать это как

select a.id from movies a join torrents b on a.movie_id = b.id
where b.seeds > 10;

вам нужно присоединиться ко второму столу

 SELECT *  FROM movies as m INNER JOIN torrents as t ON m.id = t.movie
 WHERE t.seeds > 10

Другие вопросы по теме