[{"data":1,"prerenderedAt":116},["ShallowReactive",2],{"term-i\u002Finner-join":3,"related-i\u002Finner-join":102},{"id":4,"title":5,"acronym":6,"body":7,"category":83,"description":84,"difficulty":85,"extension":86,"letter":87,"meta":88,"navigation":89,"path":90,"related":91,"seo":96,"sitemap":97,"stem":100,"subcategory":6,"__hash__":101},"terms\u002Fterms\u002Fi\u002Finner-join.md","INNER JOIN",null,{"type":8,"value":9,"toc":77},"minimark",[10,15,19,23,26,30,66,70,73],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"INNER JOIN only returns rows where there is a match in BOTH tables. If a user has no orders, they do not appear in the result. It is the strictest JOIN — both sides must have a match for the row to show up.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"INNER JOIN returns only the rows where the join condition is satisfied in both tables. Rows with no match in either table are excluded from the result set. Writing JOIN without specifying a type defaults to INNER JOIN in standard SQL.",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-sql shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","-- Only orders that have a matching user\nSELECT u.name, o.total\nFROM orders o\nINNER JOIN users u ON o.user_id = u.id;\n","sql","",[38,39,40,48,54,60],"code",{"__ignoreMap":36},[41,42,45],"span",{"class":43,"line":44},"line",1,[41,46,47],{},"-- Only orders that have a matching user\n",[41,49,51],{"class":43,"line":50},2,[41,52,53],{},"SELECT u.name, o.total\n",[41,55,57],{"class":43,"line":56},3,[41,58,59],{},"FROM orders o\n",[41,61,63],{"class":43,"line":62},4,[41,64,65],{},"INNER JOIN users u ON o.user_id = u.id;\n",[11,67,69],{"id":68},"when-youll-hear-this","When You'll Hear This",[16,71,72],{},"\"Use INNER JOIN when you only want rows that exist in both tables.\" \u002F \"INNER JOIN is the default if you just write JOIN.\"",[74,75,76],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":50,"depth":50,"links":78},[79,80,81,82],{"id":13,"depth":50,"text":14},{"id":21,"depth":50,"text":22},{"id":28,"depth":50,"text":29},{"id":68,"depth":50,"text":69},"database","INNER JOIN only returns rows where there is a match in BOTH tables. If a user has no orders, they do not appear in the result.","intermediate","md","i",{},true,"\u002Fterms\u002Fi\u002Finner-join",[92,93,94,95],"JOIN","LEFT JOIN","RIGHT JOIN","FULL JOIN",{"title":5,"description":84},{"changefreq":98,"priority":99},"weekly",0.7,"terms\u002Fi\u002Finner-join","0D_uWMbphH1U_aYTQKwVVDR66hLxBq-fyOp0TFCyf6Y",[103,107,110,113],{"title":95,"path":104,"acronym":6,"category":83,"difficulty":105,"description":106},"\u002Fterms\u002Ff\u002Ffull-join","advanced","FULL JOIN returns everything from both tables regardless of whether there is a match. Rows with no match on either side get NULLs.",{"title":92,"path":108,"acronym":6,"category":83,"difficulty":85,"description":109},"\u002Fterms\u002Fj\u002Fjoin","JOIN combines rows from two tables based on a related column.",{"title":93,"path":111,"acronym":6,"category":83,"difficulty":85,"description":112},"\u002Fterms\u002Fl\u002Fleft-join","LEFT JOIN returns all rows from the left table, and matching rows from the right table.",{"title":94,"path":114,"acronym":6,"category":83,"difficulty":85,"description":115},"\u002Fterms\u002Fr\u002Fright-join","RIGHT JOIN is LEFT JOIN's mirror image — it returns all rows from the right table, and matching rows from the left.",1776518287799]