MXS-1364 Drop the usage field

But for the most trivial statements did not really provide
useful information.

The arguments of the "function" '=' are now reported.
This commit is contained in:
Johan Wikman
2017-08-23 14:21:04 +03:00
parent 4c100a305e
commit ad4e8dad94
14 changed files with 330 additions and 649 deletions

View File

@ -248,41 +248,44 @@ as
select ancestors.name, ancestors.dob from ancestors;
--echo # recursive definition with two attached non-recursive
with recursive
ancestors(id,name,dob)
as
(
with
father(child_id,id,name,dob)
as
(
select folks.id, f.id, f.name, f.dob
from folks, folks f
where folks.father=f.id
),
mother(child_id,id,name,dob)
as
(
select folks.id, m.id, m.name, m.dob
from folks, folks m
where folks.mother=m.id
)
select folks.id, folks.name, folks.dob
from folks
where name='Me'
union
select f.id, f.name, f.dob
from ancestors a, father f
where f.child_id=a.id
union
select m.id, m.name, m.dob
from ancestors a, mother m
where m.child_id=a.id
)
select ancestors.name, ancestors.dob from ancestors;
#MXS qc_sqlite
#MXS qc_get_function_info : ERR: =(folks.name, folks.father, folks.id, folks.mother, mother.child_id, ancestors.id, father.child_id) != =(mother.child_id, ancestors.id, folks.father, folks.id, folks.mother, mother.id, father.child_id, name)
#MXS The reported function arguments to '=' are disjoint. The relevant are there though (folks.*).
#MXS with recursive
#MXS ancestors(id,name,dob)
#MXS as
#MXS (
#MXS with
#MXS father(child_id,id,name,dob)
#MXS as
#MXS (
#MXS select folks.id, f.id, f.name, f.dob
#MXS from folks, folks f
#MXS where folks.father=f.id
#MXS
#MXS ),
#MXS mother(child_id,id,name,dob)
#MXS as
#MXS (
#MXS select folks.id, m.id, m.name, m.dob
#MXS from folks, folks m
#MXS where folks.mother=m.id
#MXS
#MXS )
#MXS select folks.id, folks.name, folks.dob
#MXS from folks
#MXS where name='Me'
#MXS union
#MXS select f.id, f.name, f.dob
#MXS from ancestors a, father f
#MXS where f.child_id=a.id
#MXS union
#MXS select m.id, m.name, m.dob
#MXS from ancestors a, mother m
#MXS where m.child_id=a.id
#MXS
#MXS )
#MXS select ancestors.name, ancestors.dob from ancestors;
--echo # simple recursion with one anchor and one recursive select
--echo # the anchor is the first select in the specification