Re: SQL Property Graph Queries (SQL/PGQ)
| От | Ashutosh Bapat |
|---|---|
| Тема | Re: SQL Property Graph Queries (SQL/PGQ) |
| Дата | |
| Msg-id | CAExHW5tqAJhZ=rz+UkiOFqRNWyGo62tb1YshhTb3G_Ng9MM8oA@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: SQL Property Graph Queries (SQL/PGQ) (Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>) |
| Ответы |
Re: SQL Property Graph Queries (SQL/PGQ)
|
| Список | pgsql-hackers |
On Thu, Dec 18, 2025 at 2:45 PM Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> wrote: > > > > > > I did another investigation about whether this level of checking is > > necessary. I think according to the letter of the SQL standard, the > > typmods must indeed match. It seems Oracle does not check (the example > > mentioned above came from an Oracle source). But I think it's okay to > > keep the check. In PostgreSQL, it is much less common to write like > > varchar(1000). And we can always consider relaxing it later. > > +1. > > Attached patch adds a couple more test statements. > Squashed this into the main patchset. > > > > 2) I had it in my notes to consider whether we should support the colon > > syntax for label expressions. I think we might have talked about that > > before. > > > > I'm now leaning toward not supporting it in the first iteration. I > > don't know that we have fully explored possible conflicts with host > > variable syntax in ecpg and psql and the like. Maybe avoid that for now. > > > > I was aware of ecpg and I vaguely remember we fixed something in ECPG > to allow : in MATCH statement. Probably following changes in > psqlscan.l and pgc.l > -self [,()\[\].;\:\+\-\*\/\%\^\<\>\=] > +self [,()\[\].;\:\|\+\-\*\/\%\^\<\>\=] > > Those changes add | after : (and not the : itself) so maybe they are > not about supporting : . Do you remember what those are? I reverted those changes from both the files and ran "meson test". I did not observe any failure. It seems those changes are not needed. But adding them as a separate commit (0004) in case CI bot reveals any failures without them. I noticed that there were no ECPG tests for SQL/PGQ. Added a basic test in patch 0003. > > I spotted some examples that use : in ddl.sgml. > <programlisting> > SELECT customer_name FROM GRAPH_TABLE (myshop MATCH > (c:customer)-[:has]->(o:"order" WHERE o.ordered_when = current_date) > COLUMNS (c.name AS customer_name)); > </programlisting> > > The query demonstrates that one can use label names in a way that will > make the pattern look like an English sentence. Replacing : with IS > defeats that purpose. > > As written in that paragraph, the labels serve the purpose of exposing > the table with a different logical view (using different label and > property names). So we need that paragraph, but I think we should > change the example to use IS instead of :. Attached is suggested > minimal change, but I am not happy with it. Another possibility is we > completely remove that paragraph; I don't think we need to discuss all > possible usages the users will come up with. > > The patch changes one more instance of : by IS. But that's straight forward. > > In ddl.sgml I noticed a seemingly incomplete sentence > A property graph is a way to represent database contents, instead of using > relational structures such as tables. > > Represent the contents as what? I feel the complete sentence should be > one of the following > property graph is a way to represent database contents as a graph, > instead of representing those as relational structures OR > property graph is another way to represent database contents instead > of using relational structures such as tables > > But I can't figure out what was originally intended. 0002 contains some edits to this part of documentation. I think the paragraph reads better than before. Let me know what you think. Please let me know which of 0002 to 0004 look good to you. I will squash those into the patchset in the next version. -- Best Wishes, Ashutosh Bapat
Вложения
В списке pgsql-hackers по дате отправления: