4 ms·
Is there a competing query strategy, technology, or approach to compete with SQL? Yes, it gets the job done but it's always felt kludgy.
by mikece 4y ago
Is there a competing query strategy, technology, or approach to compete with SQL? Yes, it gets the job done but it's always felt kludgy.
- nhumrich 4y agoYou mean, the ORM? Edgedb also is nice if you want a more object like model for your db.
- mind-blight 4y agoORMs generally solve a different problem than the query language. In SQL, everything is a table (that's not 100% true, but it's close enough). So, joins still result in a flat list of records. ORMs solve the problem of translating a flat list of records into objects that have arrays of other objects. Some people also use them to avoid having to write SQL, but that's honestly a secondary feature. You can have a more modern query language that still results in tables
- giovannibonetti 4y agoThere are some ideas based on Datalog, like this one: https://opensource.googleblog.com/2021/04/logica-organizing-your-data-queries.html https://opensource.googleblog.com/2021/04/logica-organizing-...
- resonantjacket5 4y agoI've read about edgedb in the past https://www.edgedb.com/blog/we-can-do-better-than-sql https://www.edgedb.com/blog/we-can-do-better-than-sql where they mainly changed the query language, underlying it still uses postgres. Though not sure how successful they've been.
- fbdab103 4y agoI really like what PRQL[0] is doing. Fixes a lot of the unfortunate SQL syntax. My impossible dream is that after years of language stability, Postgres could make it a first party query language. [0] https://prql-lang.org/ https://prql-lang.org/
- LeonenTheDK 4y agoWow, this looks like it fixes a lot of the minor gripes I have with SQL, thanks for mentioning it. It feels way less cludgy and "modernized" compared to SQL.
- iudqnolq 4y agoThat reminds me of the Ecto DSL.
- TylerE 4y agoMaybe as a baby step we could just get legal trailing commas
- candiddevmike 4y agoOr force the big RDBMS to use the same syntax like SQL was intended to be, so I don't have to reach for an ORM or maintain different flavors of the same query. As an aside, if someone knows a tool that reliably converts PostgreSQL queries to something like SQLite, please share!
- abh123 4y agoSpark dataframes in Scala seem to combine the best parts of relational queries with at least some typing. https://spark.apache.org/docs/1.6.1/api/java/org/apache/spark/sql/DataFrame.html https://spark.apache.org/docs/1.6.1/api/java/org/apache/spar...
- genuine_smiles 4y agoKQL https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/ https://learn.microsoft.com/en-us/azure/data-explorer/kusto/... Hers a simple example: StormEvents | where StartTime between (datetime(2007-11-01) .. datetime(2007-12-01)) | where State == "FLORIDA" | count
- thejosh 4y agoI really like "modern SQL". Snowflake has some great functions and ideas, I really hope other databases take some of their ideas. It also has its pain points (ex Oracle.. so some notions they have about databases like NULLs is a bit meh). Paired with dbt makes data quite fun
- mamcx 4y agoThere are many, but most never go further than SQL (ie: Are just a "query" language). I'm trying to do it for a "general purpose" language where array + relational + functional + imperative can work together: https://tablam.org https://tablam.org --- One of the biggest damage that SQL has caused is that SQL is so bad as being a programming language, is not good enough DSL and is weirdly the only game in town, that many can't imagine that the relational model allows to do programming like every other model, just richer in "intrinsic" operators. This is the deal with RDBMS. Is like: "Everyone implement a wild flavor of a VM, sometimes JVM, .NET VM, Web Assembly, eBPF, etc, but all use a slight variation of Java for their syntax" Is like the reverse of how things are done!
- carlineng 4y agoI've written quite a bit about a new query language called Malloy: https://carlineng.com/?postid=malloy-intro#blog https://carlineng.com/?postid=malloy-intro#blog It's a semantic layer with an integrated query language that makes a ton of improvements on SQL. Full disclosure, I actually joined the team a couple of weeks ago :)
- yayitswei 4y agoDatalag is great! I use it every day in production. https://www.learndatalogtoday.org/ https://www.learndatalogtoday.org/
- skc 4y agoAn unfortunate typo.
- Breza 4y agoR's dbplyr package lets you use the amazing dplyr syntax to query SQL databases.