SVQL SalesViewer Query Language
The SVQL (SalesViewer Query Language) is a merged superset of RQL (Resource Query Language) merged with FIQL (Feed Item Query Language).
RQL - Resource Query Language
We had to enhance RQL a bit to support
- full-quoted strings in single and double quotes (
"
and'
) - conditional aggregates like
COUNT(anything LIKE something)
for large group queries - whitespace ignorance
- …
Specifications
Features supported by SVQL
in (<field>,<array-of-values>)
andout (<field>,<array-of-values>)
(in(session.company.zip, (76255, 70176))
)limit (<start>,<number>)
(Note: SalesViewer remains page-based - the offset is recalculated to the real page number internally)sort (<list of fields with + or - prefix>)
like (<field>, <pattern>)
and (<query>,<query>,...)
or (<query>,<query>,...)
not (<query>)
eq (<field>,<value>)
ne (<field>,<value>)
gt (<field>,<value>)
ge (<field>,<value>)
lt (<field>,<value>)
le (<field>,<value>)
Feature enhancements
- we made the language whitespace ignoring!
sort (<condition subquery, aggregate or conditional aggregate>)
count(<field>, <conditional aggregate>) > 0
(like:count(me.friends.name LIKE 'robin')
)exists(<field>, <condition>
orany(<field>, <condition>)
as alias forcount(<field>, <...>) > 0
like (<field>, <aggregate or conditional aggregate>)
1null()
changed tonull
(because of quoted strings)true()
changed totrue
(because of quoted strings)false()
changed tofalse
(because of quoted strings)- we want to provide a visual query builder (work in progress)
Features ignored
select (<list of attributes>)
2linkedWith (<resource ID>)
2implementing (<base-type>)
2composing (<derived-type>)
2empty(<propertie>)
2 - obsolete because of quoted strings
FIQL - Feed Item Query Language
Specifications
supported by SVQL
- Comparison:
=
,==
,!=
,=lt=
,=le=
,=gt=
,=ge=
- Logical:
;
,,
replaced by&
and|
(which is more intuitve and compatible with RQL)