Graph в Microsoft Fabric реализует стандарт ISO/IEC 39075:2024 — информационные технологии — языки баз данных — стандарт GQL . Эта статья сопоставляет текущую поддержку графа с минимальным соответствием и необязательными группами функций, определенными в стандарте. Проверьте наличие обновлений при добавлении компонентов.
Эта справочная статья предназначена для:
- Корпоративные архитекторы оценивают охват GQL графа.
- Разработчики перемещают запросы из другой базы данных, совместимой с GQL.
- Инженеры проверяют утверждения о соответствии спецификации.
Если вы начинаете работу с GQL в Fabric, ознакомьтесь с руководством по языку GQL .
Как читать эту статью
В таблицах в этой статье используются следующие соглашения:
| Имя столбца |
Описание |
|
Подклауз илиидентификатор компонента |
Идентификатор из стандарта GQL. Минимальные возможности соответствия используют номера подклаузов (например, 14.4). Дополнительные функции используют идентификаторы компонентов из приложения D (например, G004 или GQ15). |
|
Возможность или функция |
Имя или описание возможности или функции. |
|
Supported |
Да — полностью поддерживается.
Частично — поддерживаются некоторые вложенные возможности.
Нет — в настоящее время не поддерживается. |
|
Notes |
Сведения о реализации, известные ограничения или ссылки на соответствующую документацию. |
Graph реализует модель графа свойств с метками . В следующей таблице приведены сведения о поддержке модели данных.
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GG02 |
Graph с типом закрытого графа |
Да |
Graph использует закрытые типы графов , определяющие разрешенные типы узлов и типы ребер. |
| GG20 |
Явные имена типов элементов |
Да |
Типы узлов и ребер определяются именами меток, определенными в типе графа. |
| GG23 |
Необязательные наборы меток типа элемента |
Да |
Набор меток ключа типа элемента — это имя типа элемента. |
| GH02 |
Ненаправленные края |
Нет |
Все края направляются. |
| GV11, GV12, GV24, GV31 |
Типы значений свойств |
Да |
Поддерживаемые типы: BOOL, INT/INT64, UINT64FLOAT64/DOUBLE, . STRING Полный справочник по типу см. в разделе "Значения GQL" и "Типы значений". GV08, GV21, GV40 и GV07 имеют нюансы - см. раздел GV. |
Стандарт GQL (Subclause 5.3.7) определяет минимальное соответствие как поддержку всех обязательных функций — полного синтаксиса языка и семантики, не включаемого необязательным идентификатором компонента. Информативная информативная функция приложения H стандарта. Помимо минимального соответствия, реализация может претендовать на поддержку нулевых или более необязательных функций , определенных идентификаторами компонентов в приложении D стандарта.
Помимо обязательных функций, subclause 24.2 требует, чтобы минимальное утверждение соответствия включало:
- Поддержка по крайней мере одной функции GC00 (автоматическое заполнение графов) или компонентом GC04 ("Управление графами"). См. раздел GC.
- Утверждение соответствия определенной версии Юникода (не менее 13.0.0). Символьные строки в графе — Юникод с
UCS_BASIC параметрами сортировки.
- Поддержка по крайней мере этих типов значений свойств:
STRING (или) VARCHAR (илиBOOLBOOLEAN), подписанных INTEGER (илиINT) и FLOAT.
В следующих таблицах приводится сводка текущего состояния поддержки графа для обязательных возможностей, упорядоченных по функциональной области.
Управление сеансами и транзакциями (subclauses 7–8)
| Subclause |
Capability |
Поддерживается |
Notes |
| 7 |
Управление сеансами |
Нет |
|
| 8 |
Управление транзакциями |
Нет |
|
Выражения объектов (Subclause 11)
| Subclause |
Capability |
Поддерживается |
Notes |
| 11 |
Выражения объекта |
Нет |
<graph expression>, , <binding table expression><object expression primary>и CURRENT_GRAPH в настоящее время не поддерживаются. |
Инструкции запроса (Subclause 14)
| Subclause |
Capability |
Поддерживается |
Notes |
| 14.3 |
Линейная инструкция запроса / спецификация вложенных запросов |
Нет |
В настоящее время вложенные спецификации запросов не поддерживаются. Поддерживается базовая линейная цепочка операторов. |
| 14,4 |
заявление MATCH |
Да |
MATCH с сопоставлением шаблонов. |
| 14,4 |
заявление OPTIONAL MATCH |
Да |
OPTIONAL MATCH возвращается NULL для несовпаденных переменных, а не отфильтровывает их. |
| 14,9 |
ORDER BY и оператор страницы |
Да |
ORDER BY, иOFFSETLIMIT . |
| 14.10 |
Оператор "Примитивный результат" |
Да |
Поддерживается с помощью RETURN. |
| 14.11 |
заявление RETURN |
Да |
RETURN с проекциями, псевдонимами и GROUP BY. |
| 14.12 |
заявление SELECT |
Нет |
Вместо этого используйте RETURN. |
Шаблоны графов и общие элементы (Subclause 16)
| Subclause |
Capability |
Поддерживается |
Notes |
| 16.1 |
AT Предложение схемы |
Нет |
|
| 16,3 |
Таблица привязки шаблонов графа |
Да |
Привязка пути и переменные группы. |
| 16.4 |
Шаблон графа |
Да |
Простые анонимные шаблоны, именованные граничные шаблоны и составные шаблоны с WHERE предложением. |
| 16.4 |
Шаблоны узлов |
Да |
(n:Label) синтаксис с объявлениями переменных элементов, выражениями меток и спецификациями свойств. |
| 16.4 |
Шаблоны пограничных вычислений (полный направленный) |
Да |
->, <-и -[]- направленные шаблоны ребер. |
| 16.4 |
Спецификация свойств элемента |
Да |
{key: value} встроенные предикаты свойств. |
| 16.5 |
Вставка шаблона графа |
Нет |
Синтаксис GQL INSERT не поддерживается. Данные графа загружаются с помощью управления данными. |
| 16.7 |
Выражение шаблона пути |
Да |
Шаблоны пути с обходами композиции и переменной длины. |
| 16.7 |
Объединение путей |
Да |
Шаблоны с несколькими прыжками с помощью последовательного синтаксиса node-edge-node. |
| 16,8 |
Выражение метки |
Да |
Выражения меток с операторами& (AND), \| (OR) и ! (NOT). |
| 16,9 |
Справочник по переменной пути |
Да |
Переменные пути могут быть привязаны и возвращены. |
| 16,10 |
Справочник по переменной элемента |
Да |
Переменные узла и пограничного элемента. |
| 16.13 |
Клаузула WHERE |
Да |
FILTER оператор и встроенный WHERE в предикаты шаблона. |
| 16.14 |
Клаузула YIELD |
Нет |
|
| 16.16 |
Клаузула ORDER BY |
Да |
ORDER BY с ASC/ASCENDING и DESC/DESCENDING. |
| 16.17 |
Список спецификаций сортировки |
Да |
Несколько ключей сортировки с направлением упорядочивания. |
Предикаты (Subclause 19)
| Subclause |
Capability |
Поддерживается |
Notes |
| 19.3 |
Предикат сравнения |
Да |
Операторы сравнения: =, , <><>, <=, >=. |
| 19.4 |
предикат EXISTS |
Да |
EXISTS предикат с шаблонами графов поддерживается. |
| 19.5 |
предикат NULL |
Да |
IS NULL и IS NOT NULL. |
| 19.7 |
предикат NORMALIZED |
Нет |
Предикат IS [NOT] NORMALIZED в настоящее время не поддерживается. Эта функция поддерживается— см. NORMALIZE() раздел Subclause 20.24. |
Выражения и функции значений (Subclause 20)
| Subclause |
Capability |
Поддерживается |
Notes |
| 20.2 |
Основное выражение значения |
Да |
Литералы, ссылки на переменные, доступ к свойствам и скобки выражений. |
| 20.3 |
Спецификация значения |
Частично |
Поддерживаются литералы и ссылки на переменные.
SESSION_USER и динамическая спецификация параметров в настоящее время не поддерживается. |
| 20.7 |
выражение CASE |
Да |
CASE (простые и искомые) COALESCEи NULLIF поддерживаются. |
| 20.9 |
Агрегатная функция |
Да |
count, sum, avgminmax с DISTINCT/ALL набором квантификаторов. |
| 20.11 |
Справочник по свойствам |
Да |
Доступ к свойству dot-notation на узлах и краях. |
| 20.12 |
Справочник по переменной привязки |
Да |
Ссылки на переменные в выражениях. |
| 20.20 |
Логическое выражение значения |
Частично |
AND, ORNOT поддерживается.
IS [NOT] TRUE/FALSE/UNKNOWN В настоящее время тесты не поддерживаются. |
| 20.21 |
Числовое выражение значения |
Да |
Арифметические операторы: +, -, *. / |
| 20.22 |
Функция числовых значений |
Частично |
char_length поддерживается.
CHARACTER_LENGTH Псевдоним в настоящее время не поддерживается. |
| 20.23 |
Строковое выражение значения |
Да |
Объединение строк с оператором \|\| . |
| 20.24 |
Функция строки символов |
Частично |
upper, lower, trimLEFT/RIGHTподстроки и NORMALIZE поддерживаются. Сопоставление регистров Юникода не полностью поддерживается. |
| 20.25 |
Строка байтов |
Нет |
Типы строк байтов не поддерживаются. |
| 20.27 |
Функция значения даты и времени |
Да |
CURRENT_DATETIME поддерживается. См. значения даты и времени зоны. |
| 20.29 |
Функция значения длительности |
Да |
Поддерживаются функции значения длительности. |
Типы значений (Subclause 24.2)
Graph поддерживает все четыре необходимых типа значений свойств: BOOL, подписанный STRING (64-разрядный) и INTEGER, а FLOATтакже дополнительные типы. Полный справочник по типу см. в разделе "Значения GQL" и "Типы значений".
Лексические элементы (Subclause 21)
| Subclause |
Capability |
Поддерживается |
Notes |
| 21.1 |
Имена и переменные |
Да |
Привязка переменных с правилами области пересылки. Обычные и разделенные идентификаторы. |
| 21.2 |
Литералы |
Да |
Литералы для логических значений, целых чисел, чисел с плавающей запятой, строк (с экранированием в стиле C и стилем SQL) NULLи списков. |
| 21,3 |
Токены, разделители, идентификаторы |
Да |
Стандартные лексические правила GQL. |
Идентификатор компонента определяет необязательные функции. Она начинается с "G", за которым следует групповая буква и цифры. В следующих разделах упорядочиваются функции по группам.
G — функции шаблона Graph
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| G002 |
Режим сопоставления с разными краями |
Нет |
|
| G003 |
Явное ключевое REPEATABLE ELEMENTS слово |
Частично |
Поведение режима сопоставления по умолчанию является повторяемыми элементами, но явное REPEATABLE ELEMENTS ключевое слово не поддерживается. |
| G004 |
Переменные пути |
Да |
Привязка переменной пути поддерживается. |
| G005 |
Префикс поиска пути в шаблоне пути |
Нет |
|
| G006 |
Предложение шаблона графа: префикс KEEP режима пути |
Нет |
|
| G007 |
Предложение шаблонов графа KEEP : префикс поиска пути |
Нет |
|
| G010 |
Явное ключевое WALK слово |
Да |
WALK позволяет повторять узлы и края в сопоставленных путях. |
| G011 |
Режимы расширенных путей: TRAIL |
Да |
TRAIL предотвращает повторяющийся обход ребра. |
| G012 |
Режимы расширенных путей: SIMPLE |
Да |
SIMPLE предотвращает повторяющиеся узлы в сопоставленных путях. |
| G013 |
Режимы расширенных путей: ACYCLIC |
Да |
ACYCLIC предотвращает циклы в сопоставленных путях. |
| G014 |
Явные PATH/PATHS ключевые слова |
Нет |
|
| G015 |
Весь поиск пути: явное ALL ключевое слово |
Частично |
Все поведение поиска путей доступно, но явный ALL синтаксис ключевых слов не поддерживается. |
| G016 |
Любой поиск пути |
Нет |
|
| G017 |
Весь поиск по кратчайшему пути |
Нет |
|
| G018 |
Любой кратчайший поиск пути |
Нет |
|
| G019 |
Подсчет кратчайшего поиска пути |
Нет |
|
| G020 |
Подсчет кратчайшего поиска группы |
Нет |
|
| G030 |
Изменение нескольких наборов путей |
Нет |
|
| G031 |
Изменение нескольких наборов пути: операнды пути переменной длины |
Нет |
|
| G032 |
Объединение шаблонов пути |
Нет |
|
| G033 |
Объединение шаблонов пути: операнды пути переменной длины |
Нет |
|
| G035 |
Квантифицированные пути |
Да |
Привязанные шаблоны переменной длины с синтаксисом {m,n} . |
| G036 |
Квантифицированные края |
Нет |
Поддерживаются только квантифицированные пути . |
| G037 |
Вопросительные пути |
Нет |
|
| G038 |
Выражение шаблона с круглыми скобками |
Нет |
|
| G039 |
Упрощенное выражение шаблона пути: полное значение по умолчанию |
Нет |
|
| G041 |
Предикаты шаблонов элементов, отличных от локальных |
Нет |
Не локальные предикаты, ссылающиеся на переменные вне текущего элемента шаблона, в настоящее время не поддерживаются. Поддерживаются локальные WHERE предикаты в узлах и пограничных заполнители. |
| G043 |
Полные граничные шаблоны |
Да |
Полнонаправленные шаблоны ребер с -> и <-. |
| G044 |
Базовые сокращенные граничные шаблоны |
Да |
Короткие шаблоны, как ()->() и ()-(). |
| G045 |
Полные сокращенные шаблоны ребер |
Да |
Сокращенные ярлыки граничных шаблонов для любого направления. |
| G046 |
Расслабленная топологическая согласованность: смежные шаблоны вершин |
Нет |
|
| G047 |
Расслабленная топологическая согласованность: краткие шаблоны краев |
Нет |
|
| G048 |
Шаблон круглых путей: объявление переменной подпата |
Нет |
|
| G049 |
Шаблон круглых путей: префикс режима пути |
Нет |
|
| G050 |
Шаблон круглых путей: WHERE предложение |
Нет |
|
| G051 |
Шаблон круглых путей: не локальные предикаты |
Нет |
|
| G060 |
Квантификаторы квантификаторов шаблонов привязанных графов |
Да |
{m,n}, {m}{,n} синтаксис. Максимальная верхняя граница 8. |
| G061 |
Квантификаторы шаблонов графа без подключения |
Нет |
Несвязанные квантификаторы ({m,}, *, ) +в настоящее время не поддерживаются. Ограничивающие квантификаторы имеют максимальную верхнюю границу 8. |
| G074 |
Выражение метки: подстановочный знак |
Нет |
Подстановочные знаки в настоящее время не поддерживаются. |
| G080 |
Упрощенное выражение шаблона пути: базовое значение по умолчанию |
Нет |
|
| G081 |
Упрощенное выражение шаблона пути: полные переопределения |
Нет |
|
| G082 |
Упрощенное выражение шаблона пути: основные переопределения |
Нет |
|
| G100 |
ELEMENT_ID функция |
Да |
ELEMENT_ID возвращает уникальный идентификатор узла или пограничного элемента. |
| G110 |
предикат IS DIRECTED |
Нет |
|
| G111 |
предикат IS LABELED |
Нет |
|
| G112 |
IS SOURCE и IS DESTINATION предикат |
Нет |
|
| G113 |
предикат ALL_DIFFERENT |
Нет |
|
| G114 |
предикат SAME |
Нет |
|
| G115 |
предикат PROPERTY_EXISTS |
Нет |
|
Общедоступная версия — общие функции
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GA01 |
Операции с плавающей запятой IEEE 754 |
Да |
FLOAT64 использует представление IEEE 754 binary64. См. примерные числовые типы и кодировка значения API запросов. |
| GA03 |
Явное упорядочение значений NULL |
Нет |
NULL сортируется как наименьшее значение в ORDER BY, но явные NULLS FIRST/NULLS LAST ключевые слова в настоящее время не поддерживаются. |
| GA04 |
Универсальное сравнение |
Нет |
|
| GA05 |
Спецификация приведения |
Частично |
CAST(value AS target_type) поддерживается. Приведение типов Юникода в настоящее время не поддерживается. См. преобразования типов. |
| GA06 |
Предикат типа значения |
Да |
Поддерживаются предикаты типов значений. |
| GA07 |
Порядок путем отмены переменных привязки |
Нет |
|
| GA08 |
Объекты состояния GQL с диагностическими записями |
Частично |
Объекты состояния с кодами GQLSTATUS, сообщениями, диагностическими записями и цепочками причин поддерживаются. См. справочник по кодам состояния и объекту состояния API запросов. Полное покрытие кода состояния GQL еще не завершено. |
| GA09 |
Сравнение путей |
Нет |
|
ГБ — Лексические функции
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| ГБ01 |
Длинные идентификаторы |
Нет |
|
| ГБ02 |
Примечания с двойным минусом |
Да |
-- примечания строки. |
| ГБ03 |
Двойные комментарии solidus |
Да |
// примечания и /* */ блокировки примечаний. |
GC — функции управления каталогами
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GC01 |
Управление схемой Графа |
Нет |
|
| GC02 |
Управление схемой графа: IF [NOT] EXISTS |
Нет |
|
| GC03 |
Тип графа: IF [NOT] EXISTS |
Нет |
|
| GC04 |
Управление графами |
Частично |
CREATE GRAPH поддерживается тип закрытого графа. GQL не поддерживает DROP GRAPH. Вместо этого используйте пользовательский интерфейс Fabric или REST API . |
| GC05 |
Управление графами: IF [NOT] EXISTS |
Нет |
|
GD — функции изменения данных
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GD01 |
Обновляемые графы |
Нет |
Загрузка и обновление данных графа с помощью управления данными, а не с помощью инструкций GQLINSERT/SET/DELETE. |
| GD02 |
Изменения набора меток Графа |
Нет |
|
| GD03 |
DELETE оператор: поддержка вложенных запросов |
Нет |
|
| GD04 |
DELETE оператор: поддержка простых выражений |
Нет |
|
GE — функции выражений
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GE01 |
Выражения ссылочного значения Graph |
Нет |
|
| GE02 |
Выражения ссылочного значения таблицы привязки |
Нет |
|
| GE03 |
Привязка переменных в выражениях |
Да |
LET оператор для привязки переменной. |
| GE04 |
Параметры графа |
Нет |
|
| GE05 |
Параметры таблицы привязки |
Нет |
|
| GE06 |
Построение значения пути |
Да |
PATH [node, edge, node] конструктор для создания значений пути. |
| GE07 |
Логических XOR |
Да |
Эксклюзивная дисъюнкция с оператором XOR . |
| GE08 |
Параметры ссылок |
Нет |
|
| GE09 |
Горизонтальное агрегирование |
Да |
Горизонтальное агрегирование по переменным списка групп из шаблонов переменной длины. |
GF — функции
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GF01 |
Расширенные числовые функции |
Нет |
abs, mod, floor, ceilи sqrt в настоящее время не поддерживаются. |
| GF02 |
Функции Trigonometric |
Нет |
|
| GF03 |
Логарифмические функции |
Нет |
|
| GF04 |
Расширенные функции пути |
Да |
elements(path), , path_length(path)nodes(path)и edges(path) поддерживаются. |
| GF05 |
Функция с несколькими символами TRIM |
Нет |
|
| GF06 |
Явная TRIM функция |
Нет |
TRIM Синтаксис спецификации обрезки (например, TRIM('_' FROM '_x')не поддерживается). Базовый trim(string) поддерживается как обязательная возможность. |
| GF07 |
Строка байтов TRIM |
Нет |
Типы строк байтов не поддерживаются. |
| GF10 |
Расширенные агрегатные функции: общие функции набора |
Частично |
collect_list и collect_any поддерживаются.
stddev_pop, stddev_sampи product в настоящее время не поддерживаются. |
| GF11 |
Расширенные агрегатные функции: функции двоичного набора |
Нет |
percentile_cont и percentile_disc в настоящее время не поддерживаются. |
| GF12 |
CARDINALITY функция |
Нет |
Вместо этого используйте size(list). |
| GF13 |
SIZE функция |
Да |
size(list) возвращает количество элементов в списке. |
| GF20 |
Агрегатные функции в ключах сортировки |
Нет |
|
GG — функции типа Графа
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GG01 |
Graph с открытым типом графа |
Нет |
Поддерживаются только закрытые типы графов. |
| GG02 |
Graph с типом закрытого графа |
Да |
По умолчанию. Типы графов определяют разрешенные типы узлов и пограничных типов. См. типы графов GQL. |
| GG03 |
Спецификация встроенного типа Графа |
Да |
Типы узлов и ребер указываются встроенными в определении типа графа. |
| GG04 |
Тип графа, например граф |
Нет |
|
| GG05 |
Граф из источника графа |
Нет |
|
| GG20 |
Явные имена типов элементов |
Да |
Метки служат именами типов элементов. |
| GG21 |
Явные наборы меток типа элемента |
Нет |
|
| GG22 |
Вывод набора меток ключа типа элемента |
Нет |
|
| GG23 |
Необязательные наборы меток типа элемента |
Да |
Набор меток ключа — это имя типа элемента. |
| GG24 |
Расслабленная структурная согласованность |
Нет |
|
| GG25 |
Непринужденной уникальности набора меток ключей для типов пограничных вычислений |
Нет |
|
| GG26 |
Согласованность типов значений расслабленного свойства |
Нет |
|
GL — литеральные функции
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GL01 |
Шестнадцатеричные литералы |
Нет |
|
| GL02 |
Восьмеритые литералы |
Нет |
|
| GL03 |
Двоичные литералы |
Нет |
|
| GL04 |
Точное число в общей нотации без суффикса |
Да |
Целые литералы, такие как 123456. См. точные числовые типы. |
| GL05 |
Точное число с суффиксом |
Да |
Целые литералы с суффиксами типа. |
| GL06 |
Точное число в научной нотации с суффиксом |
Нет |
|
| GL07 |
Приблизительное число в общей нотации с суффиксом |
Да |
Например: 12.45f. См. приблизительные числовые типы. |
| GL08 |
Приблизительное число в научной нотации с суффиксом |
Да |
Научное нотация с суффиксом для суффиксов с плавающей запятой. |
| GL09 |
Необязательный суффикс суффикс с плавающей запятой |
Нет |
|
| GL10 |
Необязательный суффикс двойного числа |
Нет |
|
| GL11 |
Отказ от экранирования символов |
Нет |
|
| GL12 |
Форматы даты и времени SQL |
Да |
Формат ISO 8601 через ZONED_DATETIME('...'). См. значения даты и времени зоны. |
GP — функции процедуры
Поддерживается встроенный CALL оператор процедуры (GP01). Другие функции процедуры (GP02–GP18) в настоящее время не поддерживаются, включая CALL именованные процедуры, определения локальных переменных процедуры и аргументы процедуры.
GQ — функции композиции запросов
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GQ01 |
USE Предложение graph |
Нет |
|
| GQ02 |
Составной запрос: OTHERWISE |
Нет |
|
| GQ03 |
Составной запрос: UNION |
Частично |
UNION ALL поддерживается.
UNION DISTINCT в настоящее время не поддерживается. |
| GQ04 |
Составной запрос: EXCEPT DISTINCT |
Нет |
|
| GQ05 |
Составной запрос: EXCEPT ALL |
Нет |
|
| GQ06 |
Составной запрос: INTERSECT DISTINCT |
Нет |
|
| GQ07 |
Составной запрос: INTERSECT ALL |
Нет |
|
| GQ08 |
заявление FILTER |
Да |
FILTER с WHERE ключевым словом. |
| GQ09 |
заявление LET |
Да |
LET для вычисляемых переменных. |
| GQ10 |
FOR оператор: поддержка значений списка |
Да |
Обычная FOR инструкция со поддержкой значений списка. |
| GQ11 |
FOR Заявление: WITH ORDINALITY |
Нет |
|
| GQ12 |
ORDER BY и оператор page: OFFSET предложение |
Да |
OFFSET (также псевдоним как SKIP). |
| GQ13 |
ORDER BY и оператор page: LIMIT предложение |
Да |
LIMIT. |
| GQ14 |
Сложные выражения в ключах сортировки |
Нет |
|
| GQ15 |
Клаузула GROUP BY |
Да |
RETURN с GROUP BY. |
| GQ16 |
Псевдонимы предварительной проекции в ключах сортировки |
Нет |
|
| GQ17 |
Операции с переменными группы с помощью элементов |
Да |
Поддерживается путем горизонтальной агрегирования. |
| GQ18 |
Скалярные вложенные запросы |
Нет |
Скалярные вложенные запросы в настоящее время не поддерживаются. |
| GQ19 |
Предложение шаблонов графа YIELD |
Нет |
|
| GQ20 |
Расширенная линейная композиция с NEXT |
Нет |
|
| GQ21 |
OPTIONAL: несколько MATCH операторов |
Да |
OPTIONAL MATCH поддерживается. |
| GQ22 |
EXISTS предикат: несколько MATCH операторов |
Нет |
|
| GQ23 |
FOR оператор: поддержка таблицы привязки |
Нет |
|
| GQ24 |
FOR Заявление: WITH OFFSET |
Нет |
|
GS — функции управления сеансами
Функции управления сеансами GQL (GS01–GS16) в настоящее время не поддерживаются.
GT — функции управления транзакциями
Функции управления транзакциями GQL (GT01–GT03) в настоящее время не поддерживаются.
GV — функции типа значений
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GV01 |
8-разрядные целые числа без знака |
Нет |
|
| GV02 |
8-разрядные целые числа со знаком |
Нет |
|
| GV03 |
16-разрядные целые числа без знака |
Нет |
|
| GV04 |
16-разрядные целые числа со знаком |
Нет |
|
| GV05 |
Небольшие целые числа без знака |
Нет |
|
| GV06 |
32-разрядные целые числа без знака |
Нет |
|
| GV07 |
32-разрядные целые числа со знаком |
Нет |
INT32 не поддерживается в качестве типа значения GQL. |
| GV08 |
Обычные целые числа без знака |
Да |
UINT Тип. |
| GV09 |
Указанная точность целочисленного числа |
Нет |
|
| GV10 |
Большое целое число без знака |
Нет |
|
| GV11 |
64-разрядные целые числа без знака |
Да |
UINT64. |
| GV12 |
64-разрядные целые числа со знаком |
Да |
INT64. |
| GV13 |
128-разрядные целые числа без знака |
Нет |
|
| GV14 |
128-разрядные целые числа со знаком |
Нет |
|
| GV15 |
256-разрядные целые числа без знака |
Нет |
|
| GV16 |
256-разрядные целые числа со знаком |
Нет |
|
| GV17 |
Десятичные числа |
Нет |
|
| GV18 |
Небольшие целые числа со знаком |
Нет |
|
| GV19 |
Большие целые числа со знаком |
Нет |
|
| GV20 |
16-разрядные числа с плавающей запятой |
Нет |
|
| GV21 |
32-разрядные числа с плавающей запятой |
Нет |
FLOAT в псевдонимах графа FLOAT64 (64-разрядная версия), а не FLOAT32. См. приблизительные числовые типы. |
| GV22 |
Указанная точность числа с плавающей запятой |
Нет |
|
| GV23 |
Синонимы имен типа с плавающей запятой |
Да |
DOUBLE, FLOATи FLOAT64 все указывают один и тот же тип. |
| GV24 |
64-разрядные числа с плавающей запятой |
Да |
DOUBLE
/
FLOAT64. |
| GV25 |
128-разрядные числа с плавающей запятой |
Нет |
|
| GV26 |
256-разрядные числа с плавающей запятой |
Нет |
|
| GV30 |
Указанная минимальная длина строки символов |
Нет |
|
| GV31 |
Максимальная длина указанной строки символов |
Да |
STRING Тип. |
| GV32 |
Указанная строка символов фиксированной длины |
Нет |
|
| GV35 |
Типы строк байтов |
Нет |
|
| GV36 |
Указанная минимальная длина строки байтов |
Нет |
|
| GV37 |
Указанная максимальная длина строки байтов |
Нет |
|
| GV38 |
Указанная строка байтов фиксированной длины |
Нет |
|
| GV39 |
Темпоральные типы: дата, локальное время даты и локальное время |
Нет |
DATE, LOCAL DATETIME и LOCAL TIME не поддерживаются. Поддерживается только ZONED DATETIME. |
| GV40 |
Темпоральные типы: часовой даты и пояса |
Частично |
ZONED DATETIME поддерживается.
ZONED TIME в настоящее время не поддерживается. |
| GV41 |
Темпоральные типы: длительность |
Да |
Поддерживается тип длительности. |
| GV45 |
Типы записей |
Да |
Поддерживается синтаксис конструктора записей. |
| GV46 |
Закрытые типы записей |
Нет |
|
| GV47 |
Открытие типов записей |
Да |
Поддерживаются открытые типы записей. |
| GV48 |
Вложенные типы записей |
Нет |
|
| GV50 |
Типы значений списка |
Да |
LIST<element_type>. Поддерживаются вложенные типы списков (LIST<LIST<type>>). Списки не могут содержать смешанные типы. |
| GV55 |
Типы значений пути |
Да |
PATH тип для сопоставленных путей. |
| GV60 |
Типы ссылочных значений Graph |
Нет |
|
| GV61 |
Привязка ссылочных типов значений таблицы |
Нет |
|
| GV65 |
Типы динамических союзов |
Нет |
|
| GV66 |
Открытые типы динамических союзов |
Да |
ANY Поддерживается тип значения. |
| GV67 |
Типы закрытых динамических союзов |
Нет |
|
| GV68 |
Типы значений динамического свойства |
Нет |
|
| GV70 |
Типы нематериальных значений |
Да |
NULL и NOTHING типы. |
| GV71 |
Типы нематериальных значений: пустой тип |
Да |
NULL является членом каждого типа значения, допускающего значение NULL. |
| GV72 |
Типы нематериальных значений: пустой тип |
Да |
NOTHING
/
NULL NOT NULL. |
| GV90 |
Явное значение, допускающее значение NULL |
Да |
NOT NULL синтаксис поддерживается для всех типов. |
GH — другие функции
| Идентификатор функции |
Feature |
Поддерживается |
Notes |
| GH01 |
Ссылки на внешние объекты |
Нет |
|
| GH02 |
Ненаправленные шаблоны ребер |
Нет |
Для графа требуются направленные края. Любые направленные шаблоны (-[]-) соответствуют подключению независимо от направления. |
Функции пока не поддерживаются
Следующие важные функции в настоящее время не поддерживаются. Полный список см. в любой строке, помеченной "Нет " в таблицах.
-
SELECT оператор (Subclause 14.12) — используйте RETURN вместо него
-
NEXT ключевое слово для расширенной линейной композиции (GQ20)
-
UNION DISTINCT оператор (GQ03) — UNION ALL поддерживается
- Необвязанные квантификаторы графа:
{m,}, *+(G061)
- Все самые короткие, любые и подсчетные поиски пути (G016–G020)
- Скалярные вложенные запросы (GQ18)
- Расширенные числовые, тригонометрические и логарифмические функции (GF01–GF03)
-
EXCEPT и INTERSECT операторы (GQ04–GQ07)
-
OTHERWISE оператор (GQ02)
- Инструкции GQL
INSERT/SET/DELETE(GD01) — используйте вместо этого управление данными
- Команды управления сеансами и транзакций (subclauses 7–8)
Связанный контент