{"id":364,"date":"2011-03-07T14:47:21","date_gmt":"2011-03-07T12:47:21","guid":{"rendered":"http:\/\/grummfy.be\/blog\/?p=364"},"modified":"2011-03-07T14:47:21","modified_gmt":"2011-03-07T12:47:21","slug":"sql-differences-entre-left-join-right-join-etc","status":"publish","type":"post","link":"https:\/\/grummfy.be\/blog\/364","title":{"rendered":"SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc"},"content":{"rendered":"<p>J&rsquo;ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu&rsquo;il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd&rsquo;hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d&rsquo;un! Comme une image vaux mieux qu&rsquo;un long discours, en voici l&rsquo;essence.<\/p>\n<p>L&rsquo;exemple suivant se base sur une base de donn\u00e9e mysql :<br \/>\n<code lang=\"SQL\"><br \/>\nCREATE TABLE IF NOT EXISTS `acl_roles` (<br \/>\n`id` int(11) unsigned NOT NULL AUTO_INCREMENT,<br \/>\n`name` varchar(30) CHARACTER SET utf8 NOT NULL,<br \/>\n`build_on` int(11) unsigned DEFAULT NULL,<br \/>\nPRIMARY KEY (`id`),<br \/>\nKEY `build_on` (`build_on`)<br \/>\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_bin;<\/p>\n<p>INSERT INTO `acl_roles` (`id`, `name`, `build_on`) VALUES<br \/>\n(1, 'guest', NULL),<br \/>\n(2, 'normal', 1),<br \/>\n(3, 'modo', 2),<br \/>\n(4, 'admin', 3);<\/p>\n<p>ALTER TABLE `acl_roles`  ADD CONSTRAINT FOREIGN KEY (`build_on`) REFERENCES `acl_roles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;<br \/>\n<\/code><\/p>\n<p>Nous avons donc une table avec des clefs de r\u00e9f\u00e9rence pour marquer les d\u00e9pendance entre les roles. En images cela donne ceci :<\/p>\n<table boder=\"1\">\n<thead>\n<tr>\n<th>id<\/th>\n<th>name<\/th>\n<th>build_on<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td>guest<\/td>\n<td>NULL<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>normal<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>modo<\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>admin<\/td>\n<td>3<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Maintenant regardons le r\u00e9sultats de divers SELECT, le r\u00e9sultat parle de lui-m\u00eame.<\/p>\n<p>SELECT ar.*, arp.name AS parent_name FROM acl_roles ar, acl_roles arp WHERE arp.id = ar.build_on<\/p>\n<table boder=\"1\">\n<thead>\n<tr>\n<th>id<\/th>\n<th>name<\/th>\n<th>build_on<\/th>\n<th>parent_name<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<td align=\"right\">1<\/td>\n<td>guest<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">4<\/td>\n<td>admin<\/td>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>SELECT ar.*, arp.name AS parent_name FROM acl_roles ar LEFT JOIN acl_roles arp ON arp.id = ar.build_on<\/p>\n<table boder=\"1\">\n<thead>\n<tr>\n<th>id<\/th>\n<th> name<\/th>\n<th> build_on<\/th>\n<th> parent_name<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td align=\"right\">1<\/td>\n<td>guest<\/td>\n<td align=\"right\"><em>NULL<\/em><\/td>\n<td><em>NULL<\/em><\/td>\n<\/tr>\n<tr>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<td align=\"right\">1<\/td>\n<td>guest<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">4<\/td>\n<td>admin<\/td>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>SELECT ar.*, arp.name AS parent_name FROM acl_roles ar JOIN acl_roles arp ON arp.id = ar.build_on<\/p>\n<table boder=\"1\">\n<thead>\n<tr>\n<th>id<\/th>\n<th> name<\/th>\n<th> build_on<\/th>\n<th> parent_name<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<td align=\"right\">1<\/td>\n<td>guest<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">4<\/td>\n<td>admin<\/td>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>SELECT ar.*, arp.name AS parent_name FROM acl_roles ar RIGHT JOIN acl_roles arp ON arp.id = ar.build_on<\/p>\n<table boder=\"1\">\n<thead>\n<tr>\n<th>id<\/th>\n<th> name<\/th>\n<th> build_on<\/th>\n<th> parent_name<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<td align=\"right\">1<\/td>\n<td>guest<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<td align=\"right\">2<\/td>\n<td>normal<\/td>\n<\/tr>\n<tr>\n<td align=\"right\">4<\/td>\n<td>admin<\/td>\n<td align=\"right\">3<\/td>\n<td>modo<\/td>\n<\/tr>\n<tr>\n<td align=\"right\"><em>NULL<\/em><\/td>\n<td><em>NULL<\/em><\/td>\n<td align=\"right\"><em>NULL<\/em><\/td>\n<td>admin<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>J&rsquo;esp\u00e8re que l&rsquo;exemple servira a certain et que cela en aidera plus d&rsquo;un!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>J&rsquo;ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu&rsquo;il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd&rsquo;hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d&rsquo;un! Comme une image vaux mieux qu&rsquo;un long discours, en [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"webmentions_disabled_pings":false,"webmentions_disabled":false,"footnotes":""},"categories":[88],"tags":[18,24,105,28],"class_list":["post-364","post","type-post","status-publish","format-standard","hentry","category-reflexion-du-jour","tag-mysql","tag-programmation","tag-sql","tag-trucs-et-astuces"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"J&#039;ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu&#039;il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd&#039;hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d&#039;un! Comme une image vaux mieux qu&#039;un long discours, en\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Grummfy\"\/>\n\t<meta name=\"google-site-verification\" content=\"d4qc9gnvtzVc9s5gDVkEqZIVZLo42Wi\/lYmFP7\/G0Kw=\" \/>\n\t<meta name=\"keywords\" content=\"mysql,programmation,sql,trucs et astuces,r\u00e9flexion du jour\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/grummfy.be\/blog\/364\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Grummfy&#039;s project\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Grummfy&#039;s project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\" \/>\n\t\t<meta property=\"og:description\" content=\"J&#039;ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu&#039;il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd&#039;hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d&#039;un! Comme une image vaux mieux qu&#039;un long discours, en\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/grummfy.be\/blog\/364\" \/>\n\t\t<meta property=\"fb:admins\" content=\"580961199\" \/>\n\t\t<meta property=\"article:tag\" content=\"mysql\" \/>\n\t\t<meta property=\"article:tag\" content=\"programmation\" \/>\n\t\t<meta property=\"article:tag\" content=\"sql\" \/>\n\t\t<meta property=\"article:tag\" content=\"trucs et astuces\" \/>\n\t\t<meta property=\"article:tag\" content=\"r\u00e9flexion du jour\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2011-03-07T12:47:21+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2011-03-07T12:47:21+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@Grummfy\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Grummfy&#039;s project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\" \/>\n\t\t<meta name=\"twitter:description\" content=\"J&#039;ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu&#039;il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd&#039;hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d&#039;un! Comme une image vaux mieux qu&#039;un long discours, en\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#article\",\"name\":\"Grummfy's project .:. SQL : diff\\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\",\"headline\":\"SQL : diff\\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\",\"author\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/author\\\/admin#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/#organization\"},\"datePublished\":\"2011-03-07T14:47:21+02:00\",\"dateModified\":\"2011-03-07T14:47:21+02:00\",\"inLanguage\":\"fr-BE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#webpage\"},\"articleSection\":\"R\\u00e9flexion du jour, MySql, programmation, SQL, trucs et astuces\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog#listItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/grummfy.be\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/cat\\\/reflexion-du-jour#listItem\",\"name\":\"R\\u00e9flexion du jour\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/cat\\\/reflexion-du-jour#listItem\",\"position\":2,\"name\":\"R\\u00e9flexion du jour\",\"item\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/cat\\\/reflexion-du-jour\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#listItem\",\"name\":\"SQL : diff\\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog#listItem\",\"name\":\"Accueil\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#listItem\",\"position\":3,\"name\":\"SQL : diff\\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/cat\\\/reflexion-du-jour#listItem\",\"name\":\"R\\u00e9flexion du jour\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/#organization\",\"name\":\"Grummfy's project\",\"description\":\"Mes projets, mes r\\u00eaves, mes envies, ...\",\"url\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/author\\\/admin#author\",\"url\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/author\\\/admin\",\"name\":\"Grummfy\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/97f073e7de2fb1e9d5c5329eb7db2c6de1c5a80e8cfe9b1233473f78a1c908f6?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Grummfy\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#webpage\",\"url\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364\",\"name\":\"Grummfy's project .:. SQL : diff\\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\",\"description\":\"J'ai toujours eu quelques diffucult\\u00e9 a bien visualis\\u00e9 les diff\\u00e9rence qu'il y avait entre left join, right join, join, etc lorsque je fait des requ\\u00eates SQL. Aujourd'hui je suis tomb\\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d'un! Comme une image vaux mieux qu'un long discours, en\",\"inLanguage\":\"fr-BE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/364#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/author\\\/admin#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/author\\\/admin#author\"},\"datePublished\":\"2011-03-07T14:47:21+02:00\",\"dateModified\":\"2011-03-07T14:47:21+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/\",\"name\":\"Grummfy's project\",\"description\":\"Mes projets, mes r\\u00eaves, mes envies, ...\",\"inLanguage\":\"fr-BE\",\"publisher\":{\"@id\":\"https:\\\/\\\/grummfy.be\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Grummfy's project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","description":"J'ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu'il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd'hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d'un! Comme une image vaux mieux qu'un long discours, en","canonical_url":"https:\/\/grummfy.be\/blog\/364","robots":"max-image-preview:large","keywords":"mysql,programmation,sql,trucs et astuces,r\u00e9flexion du jour","webmasterTools":{"google-site-verification":"d4qc9gnvtzVc9s5gDVkEqZIVZLo42Wi\/lYmFP7\/G0Kw=","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/grummfy.be\/blog\/364#article","name":"Grummfy's project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","headline":"SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","author":{"@id":"https:\/\/grummfy.be\/blog\/author\/admin#author"},"publisher":{"@id":"https:\/\/grummfy.be\/blog\/#organization"},"datePublished":"2011-03-07T14:47:21+02:00","dateModified":"2011-03-07T14:47:21+02:00","inLanguage":"fr-BE","mainEntityOfPage":{"@id":"https:\/\/grummfy.be\/blog\/364#webpage"},"isPartOf":{"@id":"https:\/\/grummfy.be\/blog\/364#webpage"},"articleSection":"R\u00e9flexion du jour, MySql, programmation, SQL, trucs et astuces"},{"@type":"BreadcrumbList","@id":"https:\/\/grummfy.be\/blog\/364#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog#listItem","position":1,"name":"Accueil","item":"https:\/\/grummfy.be\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour#listItem","name":"R\u00e9flexion du jour"}},{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour#listItem","position":2,"name":"R\u00e9flexion du jour","item":"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour","nextItem":{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog\/364#listItem","name":"SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc"},"previousItem":{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog#listItem","name":"Accueil"}},{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog\/364#listItem","position":3,"name":"SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","previousItem":{"@type":"ListItem","@id":"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour#listItem","name":"R\u00e9flexion du jour"}}]},{"@type":"Organization","@id":"https:\/\/grummfy.be\/blog\/#organization","name":"Grummfy's project","description":"Mes projets, mes r\u00eaves, mes envies, ...","url":"https:\/\/grummfy.be\/blog\/"},{"@type":"Person","@id":"https:\/\/grummfy.be\/blog\/author\/admin#author","url":"https:\/\/grummfy.be\/blog\/author\/admin","name":"Grummfy","image":{"@type":"ImageObject","@id":"https:\/\/grummfy.be\/blog\/364#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/97f073e7de2fb1e9d5c5329eb7db2c6de1c5a80e8cfe9b1233473f78a1c908f6?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Grummfy"}},{"@type":"WebPage","@id":"https:\/\/grummfy.be\/blog\/364#webpage","url":"https:\/\/grummfy.be\/blog\/364","name":"Grummfy's project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","description":"J'ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu'il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd'hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d'un! Comme une image vaux mieux qu'un long discours, en","inLanguage":"fr-BE","isPartOf":{"@id":"https:\/\/grummfy.be\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/grummfy.be\/blog\/364#breadcrumblist"},"author":{"@id":"https:\/\/grummfy.be\/blog\/author\/admin#author"},"creator":{"@id":"https:\/\/grummfy.be\/blog\/author\/admin#author"},"datePublished":"2011-03-07T14:47:21+02:00","dateModified":"2011-03-07T14:47:21+02:00"},{"@type":"WebSite","@id":"https:\/\/grummfy.be\/blog\/#website","url":"https:\/\/grummfy.be\/blog\/","name":"Grummfy's project","description":"Mes projets, mes r\u00eaves, mes envies, ...","inLanguage":"fr-BE","publisher":{"@id":"https:\/\/grummfy.be\/blog\/#organization"}}]},"og:locale":"fr_FR","og:site_name":"Grummfy's project","og:type":"article","og:title":"Grummfy's project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","og:description":"J'ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu'il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd'hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d'un! Comme une image vaux mieux qu'un long discours, en","og:url":"https:\/\/grummfy.be\/blog\/364","fb:admins":"580961199","article:tag":["mysql","programmation","sql","trucs et astuces","r\u00e9flexion du jour"],"article:published_time":"2011-03-07T12:47:21+00:00","article:modified_time":"2011-03-07T12:47:21+00:00","twitter:card":"summary","twitter:site":"@Grummfy","twitter:title":"Grummfy's project .:. SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","twitter:description":"J'ai toujours eu quelques diffucult\u00e9 a bien visualis\u00e9 les diff\u00e9rence qu'il y avait entre left join, right join, join, etc lorsque je fait des requ\u00eates SQL. Aujourd'hui je suis tomb\u00e9 sur un exemple frappant, et je me suis dit que cela pouvait en aider plus d'un! Comme une image vaux mieux qu'un long discours, en"},"aioseo_meta_data":{"post_id":"364","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[],"defaultGraph":"","defaultPostTypeGraph":""},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2021-01-21 15:11:40","updated":"2025-06-04 00:24:43","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/grummfy.be\/blog\" title=\"Accueil\">Accueil<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour\" title=\"R\u00e9flexion du jour\">R\u00e9flexion du jour<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tSQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Accueil","link":"https:\/\/grummfy.be\/blog"},{"label":"R\u00e9flexion du jour","link":"https:\/\/grummfy.be\/blog\/cat\/reflexion-du-jour"},{"label":"SQL : diff\u00e9rences entre LEFT JOIN, RIGHT JOIN, etc","link":"https:\/\/grummfy.be\/blog\/364"}],"_links":{"self":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/364","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/comments?post=364"}],"version-history":[{"count":2,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/364\/revisions"}],"predecessor-version":[{"id":366,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/364\/revisions\/366"}],"wp:attachment":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/media?parent=364"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/categories?post=364"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/tags?post=364"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}