У меня есть запрос, как показано ниже:Как понять внутреннее соединение mysql?
users = select * from users where group_id = 1 and track_id = "xxxxxx";
user_ids = [user.id for user in users]
tickets = select * from tickets where group_id = 1 and user_id in (user_ids);
users
и tickets
таблицы все иметь group_id
поле.
Индекс таблицы пользователей находится на group_id
и track_id
; Индекс таблицы билетов находится на group_id
и user_id
.
Я хочу объединить два sql в один.
select * from tickets join users on tickets.user_id = users.id
where tickets.group_id = 1 and users.track_id = "xxxxx";
или
select * from tickets join users on tickets.user_id = users.id
where users.group_id = 1 and users.track_id = "xxxxx";;
Правильно ли это? что лучше? Я как то, что смысл внутреннего соединения, но я хочу знать, я должен использовать tickets.group_id
или users.group_id
? В чем разница?
Как понять внутреннее соединение mysql? Как это работает?
Возможно, вы захотите начать со своей документации: http://dev.mysql.com/doc/refman/5.7/en/join.html – Daerik
@Siyual Что это связано с внутренним и внешним соединением? – Barmar
@ Barmar Это не так, но ответы в нем четко отвечают на вопрос о том, как работают внутренние соединения. – Siyual