Я хочу выполнить запрос соединения SQL. У меня три таблицы _A, _B, _C, скажем. И каждая таблица имеет столбец с именем «уровень» с некоторыми элементами, имеющими значение 1,2,3 в этом столбце.SQL Join Query: проблема с несколькими таблицами
Сначала я просто хотел элемент с уровнем = 1 из таблицы _A, и поэтому писал:
SELECT * FROM _A WHERE level = "1" ORDER BY RANDOM() LIMIT 1
который работал отлично.
Теперь я хочу выбрать случайный элемент с уровнем = 1 из любой из трех таблиц. я писал:
SELECT * FROM _A, _B, _C WHERE level = "1" ORDER BY RANDOM() LIMIT 1
Это не сработало. Система разбилась. Но в моем справочнике говорится, что это способ сделать это. Пожалуйста помоги.
+1 Возможно, стоит упомянуть, что наиболее вероятная причина, по которой исходный запрос OP разбился о его системе, заключается в том, что он случайно написал запрос, выполняющий неявные декартовы соединения между тремя разными таблицами. –
@Mark: хорошо, забыл упомянуть, что как только я начал писать запрос ... – RedFilter