Comment on I accidentally removed the WHERE clause from my SQL query in a personal tool. Every row is now the same. I lost everything, have no backup, and I'm stupid.

<- View Parent
jjjalljs@ttrpg.network ⁨1⁩ ⁨year⁩ ago

I get mildly mad all the time when writing SQL because I feel like it’s upside down

Instead of

select u.id. u.email, p.name
from user u
join persona p on p.user_id = u.id
where u.active = true

where the columns are referenced before they’re defined (like what is u.id? Keep reading to find out!)

it should instead be

from user u
join persona p on u.id = p.user_id
where u.active = true
select u.id, u.email, p.name

Now nothing is defined before it’s used, and you’re less likely to miss your where clause. I usually write the joins first anyway because I know what tables I care about, but don’t know which specific things I’ll want.

I can’t think of any other languages that use things before they’re defined except extremely dysfunctional JavaScript.

source
Sort:hotnewtop