Malcolm: SQL for the command line: "show"
Malcolm: SQL for the command line: "show"
Posted Mar 23, 2009 18:51 UTC (Mon) by KGranade (guest, #56052)In reply to: Malcolm: SQL for the command line: "show" by Wol
Parent article: Malcolm: SQL for the command line: "show"
Secondly, you recommend using something like English, but I have no idea how the examples you present would be used, which means learning a specialized syntax, which means I might as well use a generalized syntax that is a moderately straightforward mapping of the concepts of database retrieval to English... which is a decent description of SQL.
<Insert overly-verbose rant about the pitfalls of "natural language programming here>
Posted Mar 24, 2009 0:21 UTC (Tue)
by Wol (subscriber, #4433)
[Link] (5 responses)
Sorry, but I did *not* say "use English". I said "use ENGLISH" (ENGLISH being a dedicated data access language).
ENGLISH is the original Pick data query language, and is a very good NFNF query tool (It's also called ENGLISH because it is, actually, very similar to English!) For example
SELECT INVOICE WITH INVOICE.TOTAL EQ 1600 AND WHERE LINE.ITEM EQ 215
will select all invoices where the invoice value is 1600 and any individual line is 215.
SQL is *not* a "moderately straightforward mapping of the concepts of database retrieval to English" - no way would I describe it as "moderately straightforward", and it is very relational-oriented. Using it to query a non-relational database is *horrid*.
Cheers,
Posted Mar 24, 2009 0:44 UTC (Tue)
by flewellyn (subscriber, #5047)
[Link] (4 responses)
Posted Mar 24, 2009 15:51 UTC (Tue)
by Wol (subscriber, #4433)
[Link] (3 responses)
So yes, SQL is probably a good language for querying them. But then, so is ENGLISH, because it's n-dimensional (actually, it doesn't work that well if n hits 4 or more :-( so horses for courses, I'd use ENGLISH because that's what I'm comfortable with.
Cheers,
Posted Mar 24, 2009 16:24 UTC (Tue)
by flewellyn (subscriber, #5047)
[Link] (2 responses)
Posted Mar 26, 2009 14:06 UTC (Thu)
by Wol (subscriber, #4433)
[Link] (1 responses)
IBM are on record as saying that their version (the U2 databases) is the fastest growing product in their database VAR sales.
And International Spectrum is holding their conference right now - against a background of collapsing conference attendances (typically down 25 - 50 %), they're holding their own - I think they were down 7% (or was it up?)
imho relational *theory* is great. Unfortunately, relational practice falls foul of Einstein's corollary to Occam - practice is TOO simple, therefore system complexity (as in all the stuff *round* the database) rises sharply as a result. SQL queries are a classic example :-)
Cheers,
Posted Mar 28, 2009 0:55 UTC (Sat)
by nix (subscriber, #2304)
[Link]
(actually it *is* useful, but that doesn't mean it's not totally bizarre
Malcolm: SQL for the command line: "show"
Wol
Malcolm: SQL for the command line: "show"
Malcolm: SQL for the command line: "show"
Wol
Malcolm: SQL for the command line: "show"
Malcolm: SQL for the command line: "show"
Wol
Malcolm: SQL for the command line: "show"
instance. In case the relational model is 'too hard', now you can turn
your DB into a tiny spreadsheet and bash at it in the query. How
relational...
and screwy. The real problem here is SQL's halfassed incapable
implementation of half the relational calculus in a non-Turing-complete
fashion. But it paid for my house so I can't complain *too* terribly
hard.)