Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Comments on Why is SQL usually written in CAPS?

Parent

Why is SQL usually written in CAPS?

+11
−0

Why are keywords in SQL usually written in capital letters? For example:

SELECT * FROM person WHERE mood = 'happy';

My understanding is that SQL is case insensitive, so the case doesn't actually make a difference?

History

0 comment threads

Post
+4
−0

SQL is actually quite old, dating to 1973. It is also probably an evolution of similar previous languages. Seems like in those days, upper case was favored in programming. See BASIC, COBOL, Fortran. Assembly from those days also seems to use uppercase. My guess would be that computers back then had limited resolution, and uppercase letters were easier to work with.

Some say that uppercase makes the text easier to parse. I haven't seen empirical evidence for this, and my own experience is that there's little difference but lowercase is more pleasant to read and type.

These days, I think syntax highlighting is much more effective as a reading aid. Once you do have highlighting, casing doesn't help much, and arguably makes it worse. These days, it's often possible to set things up so that you develop your SQL in your favorite advanced text editor, and most SQL platforms also have built in highlighting. But this was not always so (and color display was not always a given).

Notably, SQL is not entirely case insensitive. For keywords, casing usually doesn't matter. But for identifiers it can. Snowflake, for example, is case sensitive for identifiers -- you can even have tables FOO, Foo, foo all in the same schema. Snowflake gives the appearance that identifiers are not case sensitive because its default name resolution policy is to ignore casing variations, but you can see the case sensitive behavior if you quote them like select * from "FoO".

History

1 comment thread

Hardware didn't support lower case (1 comment)
Hardware didn't support lower case
Olin Lathrop‭ wrote 12 months ago · edited 12 months ago
My guess would be that computers back then had limited resolution
No, that's not it. Hardware terminals often didn't have lower case at all, or it was cumbersome to change case. On the popular ADM-3A terminal you had to unscrew a cover and flip a DIP switch, for example. Many line printers also didn't have lower case capability. Lower case capability didn't become universal until the early 1980s.