I understand this is just an opinion but it's an opinion held by everyone in my org who writes both.
Theoretical correctness loses to pragmatism a lot and I'd read the KQL every day. Look at the examples at https://docs.microsoft.com/en-us/azure/data-explorer/kusto/q... - look at the examples at https://docs.microsoft.com/en-us/azure/data-explorer/write-q... and tell me they're not more readable than comparable SQL?
(I can see the result type both by hovering on the query but also by just looking at the end of it - and in SQL most of the SELECTed items in complex queries are from subqueries anyway - at least in my use case)
If you want nice autocomplete too, that's fine, but if there is a tradeoff, human understanding is the primary concern.
C#'s LINQ (really powerful tool similar to SQL) works the same way
look:
var list = new List<int>{1,2,3}
var extracted = list
.............................Where(x => x > 1)
.............................Select(x => $"my number: {x})
.............................ToList();
or
var extarcted =
........................from x in list
........................where x > 1
........................select $"my number: {x};
Toilets are absolutely designed to make the dispenser placement convenient. You just don’t think about it because 95% of toilets get it right, so it just doesn’t bother you that much that it can be wrong.
In SQL, some decisions are right about 10% of the time and are annoying and awkward the other 90%.
That’s why the order matters. Because everything else got it right.
Then, the ide could basically fill my from out for me, based on what I'm asking for. Can even suggest what join I will need, if I list columns from multiple tables.
Every table has more than one column
So there's always more columns to remember than tables and generally tables are pretty easy like user invoices blabla
I worked with systems that had like 500 tables and some of them with 20-50 columns
you really want good intellisense in such a environment
Good intelligent suggestions is, of course, helpful. And I agree that suggesting one of 500 is easier than the other. That said, neither is hard for a computer. And even asking friends what table I want will often be done with starting with the actual columns I want.
if you start query with
SELECT MiddleName then you could receive auto complete thats adds "FROM Users" and moves your cusor after MiddleName.
if you start query with
FROM Users SELECT _ and know intellisense drops list of columns
The language should be right for human understanding, not automated mad-lib generation.