this post was submitted on 19 Oct 2023
1609 points (98.7% liked)

Programmer Humor

32063 readers
1730 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] xmunk@sh.itjust.works 16 points 11 months ago* (last edited 11 months ago) (3 children)

Sorry, to clarify, not everything is in all caps. I'll append my prefered syntax below

WITH foo AS (
    SELECT id, baz.binid
    FROM
            bar
        JOIN baz
            ON bar.id = baz.barid
)
SELECT bin.name, bin.id AS binid
FROM
        foo
    JOIN bin
        foo.binid = bin.id

The above is some dirt simple SQL, when you get into report construction things get very complicated and it pays off to make sure the simple stuff is expressive.

[–] NedDasty@lemmy.world 12 points 11 months ago (2 children)

You indent your JOIN? Why on earth? It lives in the same context as the SELECT.

[–] xmunk@sh.itjust.works 8 points 11 months ago

I've seen both approaches and I think they're both quite reasonable. An indented join is my preference since it makes sub queries more logically indented... but our coding standards allow either approach. We've even got a few people that like

FROM foo
JOIN bar ON foo.id = bar.fooid
JOIN baz ON bar.id = baz.barid
[–] callcc@lemmy.world 3 points 11 months ago (1 children)

Actually not. It's part of the FROM

[–] Stumblinbear@pawb.social 1 points 11 months ago

That double indented from is hurting me

[–] Cold_Brew_Enema@lemmy.world 1 points 11 months ago (1 children)

Um you forgot the semicolon before with assuming there isn't one in the previous statement. Syntax error. Code review failed

[–] xmunk@sh.itjust.works 4 points 11 months ago

There's no way we're running in multi statement mode... I like my prepared queries, thank you very much.