Поясняет редакция «Кода»:
Это не просто мем, а настоящая памятка для тех, кто пользуется системами управления реляционными базами данных SQL, в частности, Oracle, MySQL, MS SQL Server, SQLite и PostgreSQL.
Соединения, или joins, в таких БД используются для извлечения данных из нескольких таблиц на основе какого-то условия. Соединения позволяют объединять строки из двух и более таблиц в единый набор результатов. Большинство СУБД поддерживает такие соединения:
- LEFT JOIN,
- RIGHT JOIN,
- INNER JOIN,
- FULL JOIN.
Понимание того, как объединять данные из нескольких таблиц с помощью соединений, — важнейший навык для любого разработчика, администратора или аналитика БД.
И вот памятка:
LEFT JOIN возвращает все строки из левой таблицы и только те строки из правой таблицы, которые соответствуют условию объединения. Так у персонажа в меме появляется борода, но лысина остаётся.
RIGHT JOIN возвращает все строки из правой таблицы и только те строки из левой таблицы, которые соответствуют условию объединения. Так у персонажа в меме появляется шевелюра, но уже без бороды.
INNER JOIN возвращает только те строки, где есть совпадение по условию объединения в обеих таблицах. Из-за этого у персонажа в меме нет ни бороды, ни шевелюры.
FULL OUTER JOIN возвращает все строки из обеих таблиц, включая строки, которые не имеют совпадений по условию объединения. В результате у персонажа появляются и борода, и шевелюра.
У нас есть несколько статей о базах данных: