- From: Melvin Carvalho <melvincarvalho@gmail.com>
- Date: Wed, 3 May 2023 16:05:07 +0200
- To: Kingsley Idehen <kidehen@openlinksw.com>
- Cc: "public-lod@w3.org" <public-lod@w3.org>, "semantic-web@w3.org" <semantic-web@w3.org>
- Message-ID: <CAKaEYhLh5U4Jzq1bpARBr5mqU+cWZhTyBGH7y5uTT-eWkF6Upg@mail.gmail.com>
People that enjoyed SPARQL Cheatsheet Query Examples, may enjoy: Netflix PDF analyzer https://twitter.com/Saboo_Shubham_/status/1653163644866252802 and GPT Code Interpretor https://www.oneusefulthing.org/p/it-is-starting-to-get-strange Seems like all the 1-5* of linked data are merging together st 3. 5. 2023 v 15:01 odesílatel Kingsley Idehen <kidehen@openlinksw.com> napsal: > > > On Tuesday, 2 May 2023 at 09:13:56 UTC+12 kidehen wrote: > >> All, >> >> ChatGPT 3.5 is less capable that 4.0, but much faster. Here’s a >> transcript demonstrating the creation of SQL and SPARQL cheatsheets – that >> I just generated (whimsically). >> Transcript >> >> Q: Make a simple SQL Cheatsheet. >> Q: Redo, but using a Table for enhanced presentation. >> Q: Redo the SQL cheatsheet using a Markdown Table in a code-block. >> A: >> Sure, here is the SQL cheatsheet presented in a markdown table inside a >> code block: >> Command Description >> SELECT Retrieves data from one or more tables >> SELECT column1, column2, ... FROM table_name; >> DISTINCT Retrieves unique values >> SELECT DISTINCT column_name FROM table_name; >> WHERE Filters records based on a condition >> SELECT column1, column2, ... FROM table_name WHERE condition; >> AND/OR Combines multiple conditions >> SELECT column1, column2, ... FROM table_name WHERE condition1 AND/OR >> condition2; >> ORDER BY Sorts the result set >> SELECT column1, column2, ... FROM table_name ORDER BY column_name >> ASC/DESC; >> LIMIT Limits the number of results returned >> SELECT column1, column2, ... FROM table_name LIMIT number_of_rows; >> JOIN Combines rows from two or more tables based on a related column >> between them >> SELECT column1, column2, ... FROM table1 JOIN table2 ON >> table1.column_name = table2.column_name; >> GROUP BY Groups rows based on a column >> SELECT column1, COUNT(column2) FROM table_name GROUP BY column1; >> HAVING Filters groups based on a condition >> SELECT column1, COUNT(column2) FROM table_name GROUP BY column1 HAVING >> COUNT(column2) > value; >> INSERT INTO Inserts new records into a table >> INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, >> ...); >> UPDATE Modifies existing records in a table >> UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE >> condition; >> DELETE FROM Deletes records from a table >> DELETE FROM table_name WHERE condition; >> >> I hope this presentation is helpful and easy to read. >> >> Q: Redo, with an examples column using Northwind >> A: >> Sure, here is an updated SQL cheatsheet presented in a markdown table >> inside a code block with an additional column for actual usage examples >> based on the Northwind database schema: >> Command Description Example >> SELECT Retrieves data from one or more tables SELECT ProductName, >> UnitPrice FROM Products; >> DISTINCT Retrieves unique values SELECT DISTINCT CategoryID FROM >> Products; >> WHERE Filters records based on a condition SELECT ProductName, UnitPrice >> FROM Products WHERE UnitPrice > 20; >> AND/OR Combines multiple conditions SELECT ProductName, UnitPrice FROM >> Products WHERE CategoryID = 1 AND Discontinued = 0; >> ORDER BY Sorts the result set SELECT ProductName, UnitPrice FROM >> Products ORDER BY UnitPrice DESC; >> LIMIT Limits the number of results returned SELECT ProductName, >> UnitPrice FROM Products LIMIT 10; >> JOIN Combines rows from two or more tables based on a related column >> between them SELECT Products.ProductName, Suppliers.CompanyName FROM >> Products JOIN Suppliers ON Products.SupplierID = Suppliers.SupplierID; >> GROUP BY Groups rows based on a column SELECT CategoryID, COUNT(*) FROM >> Products GROUP BY CategoryID; >> HAVING Filters groups based on a condition SELECT CategoryID, COUNT(*) >> FROM Products GROUP BY CategoryID HAVING COUNT(*) > 5; >> INSERT INTO Inserts new records into a table INSERT INTO Products >> (ProductName, UnitPrice) VALUES ('Chai', 18.00); >> UPDATE Modifies existing records in a table UPDATE Products SET >> UnitPrice = 20 WHERE ProductID = 1; >> DELETE FROM Deletes records from a table DELETE FROM Products WHERE >> ProductID = 1; >> I hope this updated version of the SQL cheatsheet with examples based on >> the Northwind database schema is helpful for you to practice with. >> >> Q: Repeat, for SPARQL using DBpedia for examples. >> A: >> Sure, here is the SPARQL cheatsheet presented in a markdown table inside >> a code block with an additional column for actual usage examples using >> DBpedia for the examples: >> Command Description Example >> SELECT Retrieves data from one or more RDF graphs SELECT ?person >> ?birthdate WHERE { ?person dbo:birthDate ?birthdate } LIMIT 10 >> DISTINCT Retrieves unique values SELECT DISTINCT ?category WHERE { >> ?product dcterms:subject ?category } >> WHERE Filters RDF triples based on a condition SELECT ?film WHERE { >> ?film rdf:type dbo:Film . ?film dbo:starring dbr:Harrison_Ford . } >> FILTER Filters query results based on a condition SELECT ?film WHERE { >> ?film rdf:type dbo:Film . ?film dbo:budget ?budget . FILTER(?budget > >> 100000000) } >> UNION Combines the results of two or more queries SELECT ?name WHERE { { >> ?person foaf:name ?name } UNION { ?organization foaf:name ?name } } >> OPTIONAL Retrieves optional RDF triples SELECT ?book ?author WHERE { >> ?book rdf:type dbo:Book . OPTIONAL { ?book dbo:author ?author } } >> ORDER BY Sorts the query results SELECT ?person ?birthdate WHERE { >> ?person dbo:birthDate ?birthdate } ORDER BY DESC(?birthdate) LIMIT 10 >> LIMIT Limits the number of results returned SELECT ?person WHERE { >> ?person rdf:type dbo:Person } LIMIT 10 >> GROUP BY Groups query results based on a variable SELECT ?category >> (COUNT(?product) AS ?count) WHERE { ?product dcterms:subject ?category } >> GROUP BY ?category >> HAVING Filters groups based on a condition SELECT ?category >> (COUNT(?product) AS ?count) WHERE { ?product dcterms:subject ?category } >> GROUP BY ?category HAVING (COUNT(?product) > 100) >> >> Note: The examples above assume the use of the DBpedia SPARQL endpoint ( >> https://dbpedia.org/sparql). If you want to test these queries, you can >> use the DBpedia SPARQL endpoint or install your own copy of DBpedia. >> >> Q: Redo for SPARQL including DESCRIBE, CONSTRUCT, COPY, and MOVE commands >> A: >> Sure, here is the SPARQL cheatsheet presented in a markdown table inside >> a code block with additional commands and actual usage examples using >> DBpedia for the examples: >> Command Description Example >> SELECT Retrieves data from one or more RDF graphs SELECT ?person >> ?birthdate WHERE { ?person dbo:birthDate ?birthdate } LIMIT 10 >> DISTINCT Retrieves unique values SELECT DISTINCT ?category WHERE { >> ?product dcterms:subject ?category } >> WHERE Filters RDF triples based on a condition SELECT ?film WHERE { >> ?film rdf:type dbo:Film . ?film dbo:starring dbr:Harrison_Ford . } >> FILTER Filters query results based on a condition SELECT ?film WHERE { >> ?film rdf:type dbo:Film . ?film dbo:budget ?budget . FILTER(?budget > >> 100000000) } >> UNION Combines the results of two or more queries SELECT ?name WHERE { { >> ?person foaf:name ?name } UNION { ?organization foaf:name ?name } } >> OPTIONAL Retrieves optional RDF triples SELECT ?book ?author WHERE { >> ?book rdf:type dbo:Book . OPTIONAL { ?book dbo:author ?author } } >> ORDER BY Sorts the query results SELECT ?person ?birthdate WHERE { >> ?person dbo:birthDate ?birthdate } ORDER BY DESC(?birthdate) LIMIT 10 >> LIMIT Limits the number of results returned SELECT ?person WHERE { >> ?person rdf:type dbo:Person } LIMIT 10 >> GROUP BY Groups query results based on a variable SELECT ?category >> (COUNT(?product) AS ?count) WHERE { ?product dcterms:subject ?category } >> GROUP BY ?category >> HAVING Filters groups based on a condition SELECT ?category >> (COUNT(?product) AS ?count) WHERE { ?product dcterms:subject ?category } >> GROUP BY ?category HAVING (COUNT(?product) > 100) >> DESCRIBE Retrieves RDF triples that describe a resource DESCRIBE >> <http://dbpedia.org/resource/Barack_Obama> >> <http://dbpedia.org/resource/Barack_Obama> >> CONSTRUCT Generates an RDF graph based on a query pattern CONSTRUCT { >> ?book dbo:author ?author } WHERE { ?book rdf:type dbo:Book . ?book >> dbo:author ?author } >> COPY Copies a named graph from one location to another COPY >> <http://example.org/graph1> <http://example.org/graph1> TO >> <http://example.org/graph2> <http://example.org/graph2> >> MOVE Moves a named graph from one location to another MOVE >> <http://example.org/graph1> <http://example.org/graph1> TO >> <http://example.org/graph2> <http://example.org/graph2> >> >> Note: The examples above assume the use of the DBpedia SPARQL endpoint ( >> https://dbpedia.org/sparql). If you want to test these queries, you can >> use the DBpedia SPARQL endpoint or install your own copy of DBpedia. >> > All, > Testing SPARQL Cheatsheet Query Examples, courtesy of ChatGPT 3.5 & Linked > Data Principles > > > Create a rendition using these guidelines, for the first 5 rows: > > 1. Create a DBpedia SPARQL URL from the Example column values within > quotations > 2. Use the URL to hyperlink values in the “Command” Column > > Command Description Example > SELECT > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3Fname%20WHERE%20%7B%20%3Fs%20dbo%3AbirthPlace%20dbr%3AGermany%3B%20foaf%3Aname%20%3Fname%20%7D%20LIMIT%2010&format=text%2Fhtml> Retrieves > values by matching a query pattern. Returns a table with variables and > their bindings. SELECT ?name WHERE { ?s dbo:birthPlace dbr:Germany; > foaf:name ?name } LIMIT 10 > ASK > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=ASK%20%7B%20dbr%3AAlbert_Einstein%20dbo%3AbirthPlace%20dbr%3AGermany%20%7D&format=text%2Fhtml> Tests > whether a query pattern has a solution. Returns a boolean value (true or > false). ASK { dbr:Albert_Einstein dbo:birthPlace dbr:Germany } > DESCRIBE > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=DESCRIBE%20dbr%3AAlbert_Einstein&format=text%2Fhtml> Retrieves > information about resources in the RDF graph. Returns an RDF graph as the > result. DESCRIBE dbr:Albert_Einstein > CONSTRUCT > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=CONSTRUCT%20%7B%20%3Fs%20a%20foaf%3APerson%20%7D%20WHERE%20%7B%20%3Fs%20a%20foaf%3APerson%20%7D%20LIMIT%2010&format=text%2Fhtml> Constructs > an RDF graph based on the query pattern. Returns an RDF graph as the result. CONSTRUCT > { ?s a foaf:Person } WHERE { ?s a foaf:Person } LIMIT 10 > SAMPLE() > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20(SAMPLE(%3Fname)%20AS%20%3Fsample_name)%20WHERE%20%7B%20%3Fs%20foaf%3Aname%20%3Fname%20%7D%20GROUP%20BY%20%3Fs&format=text%2Fhtml> Returns > an arbitrary value from a group of values. Useful for selecting a single > value per group. SELECT (SAMPLE(?name) AS ?sample_name) WHERE { ?s > foaf:name ?name } GROUP BY ?s > > Q: Repeat, but for the next 4 rows. > > Command Description Example > COUNT() > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20(COUNT(%3Fs)%20AS%20%3Fcount)%20WHERE%20%7B%20%3Fs%20a%20dbo%3AScientist%20%7D&format=text%2Fhtml> Counts > the number of solutions that match the query pattern. Returns an integer > value. SELECT (COUNT(?s) AS ?count) WHERE { ?s a dbo:Scientist } > FILTER > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3Fname%20WHERE%20%7B%20%3Fs%20dbo%3AbirthPlace%20dbr%3AGermany%3B%20foaf%3Aname%20%3Fname%20FILTER%20(lang(%3Fname)%20%3D%20%22en%22)%20%7D&format=text%2Fhtml> Filters > query results based on a condition. Excludes solutions that do not satisfy > the condition. SELECT ?name WHERE { ?s dbo:birthPlace dbr:Germany; > foaf:name ?name FILTER (lang(?name) = “en”) } > OPTIONAL > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3Fname%20%3FbirthDate%20WHERE%20%7B%20%3Fs%20foaf%3Aname%20%3Fname%20OPTIONAL%20%7B%20%3Fs%20dbo%3AbirthDate%20%3FbirthDate%20%7D%20%7D%20LIMIT%2010&format=text%2Fhtml> Allows > parts of a query to be optional. If the optional part has no match, the > query still succeeds. SELECT ?name ?birthDate WHERE { ?s foaf:name ?name > OPTIONAL { ?s dbo:birthDate ?birthDate } } LIMIT 10 > ORDER BY > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3Fname%20%3FbirthDate%20WHERE%20%7B%20%3Fs%20foaf%3Aname%20%3Fname%3B%20dbo%3AbirthDate%20%3FbirthDate%20%7D%20ORDER%20BY%20%3FbirthDate&format=text%2Fhtml> Orders > the query results based on the specified variable(s). Can order in > ascending or descending. SELECT ?name ?birthDate WHERE { ?s foaf:name > ?name; dbo:birthDate ?birthDate } ORDER BY ?birthDate > > Q: Repeat, for the next 4 rows. > > Command Description Example > GROUP BY > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3FbirthPlace%20(COUNT(%3Fs)%20AS%20%3Fcount)%20WHERE%20%7B%20%3Fs%20dbo%3AbirthPlace%20%3FbirthPlace%3B%20a%20dbo%3AScientist%20%7D%20GROUP%20BY%20%3FbirthPlace&format=text%2Fhtml> Groups > the query results by one or more variables and applies an aggregate > function to each group. SELECT ?birthPlace (COUNT(?s) AS ?count) WHERE { > ?s dbo:birthPlace ?birthPlace; a dbo:Scientist } GROUP BY ?birthPlace > HAVING > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=SELECT%20%3FbirthPlace%20(COUNT(%3Fs)%20AS%20%3Fcount)%20WHERE%20%7B%20%3Fs%20dbo%3AbirthPlace%20%3FbirthPlace%3B%20a%20dbo%3AScientist%20%7D%20GROUP%20BY%20%3FbirthPlace%20HAVING%20(COUNT(%3Fs)%20%3E%205)&format=text%2Fhtml> Filters > the results of a GROUP BY query based on a condition. Excludes groups that > do not satisfy the condition. SELECT ?birthPlace (COUNT(?s) AS ?count) > WHERE { ?s dbo:birthPlace ?birthPlace; a dbo:Scientist } GROUP BY > ?birthPlace HAVING (COUNT(?s) > 5) > DESCRIBE > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=DESCRIBE%20dbr%3AAlbert_Einstein&format=text%2Fhtml> Provides > an RDF graph that describes the resources found. DESCRIBE > dbr:Albert_Einstein > CONSTRUCT > <http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=CONSTRUCT%20%7B%20%3Fs%20a%20dbo%3AScientist%20%7D%20WHERE%20%7B%20%3Fs%20a%20dbo%3AScientist%20%7D&format=text%2Fhtml> Constructs > an RDF graph based on the query pattern. CONSTRUCT { ?s a dbo:Scientist } > WHERE { ?s a dbo:Scientist } > > > -- > Regards, > > Kingsley Idehen > Founder & CEO > OpenLink Software > Home Page: http://www.openlinksw.com > Community Support: https://community.openlinksw.com > Weblogs (Blogs): > Company Blog: https://medium.com/openlink-software-blog > Virtuoso Blog: https://medium.com/virtuoso-blog > Data Access Drivers Blog: https://medium.com/openlink-odbc-jdbc-ado-net-data-access-drivers > > Personal Weblogs (Blogs): > Medium Blog: https://medium.com/@kidehen > Legacy Blogs: http://www.openlinksw.com/blog/~kidehen/ > http://kidehen.blogspot.com > > Profile Pages: > Pinterest: https://www.pinterest.com/kidehen/ > Quora: https://www.quora.com/profile/Kingsley-Uyi-Idehen > Twitter: https://twitter.com/kidehen > Google+: https://plus.google.com/+KingsleyIdehen/about > LinkedIn: http://www.linkedin.com/in/kidehen > > Web Identities (WebID): > Personal: http://kingsley.idehen.net/public_home/kidehen/profile.ttl#i > : http://id.myopenlink.net/DAV/home/KingsleyUyiIdehen/Public/kingsley.ttl#this > >
Received on Wednesday, 3 May 2023 14:05:30 UTC