Как Google помага да се улесни работата с полу- и неструктурирани данни

Две големи новини от BigQuery! Google току-що обяви нови SQL функции като количествения оператор LIKE и новата JSON функция. Нека да ги разгледаме!

Нека започнем с количествения оператор LIKE — който в момента е в предварителен преглед.

Количествен LIKE Оператор

С количествения LIKEоператор можете да проверите стойност за търсене за съвпадения с няколко шаблона, като използвате едно от тези условия[1][2]:

  • LIKE ANY: Проверява дали поне един шаблон съвпада.
  • LIKE SOME: Синоним на LIKE ANY.
  • LIKE ALL: Проверява дали всеки шаблон съвпада.

Ето малко пример:

WITH Words AS
(SELECT ‘Boys will be boys.’ as value UNION ALL
 SELECT ‘Girls will be girls.’ UNION ALL
 SELECT ‘She is so girly.’)

SELECT * FROM Words WHERE value LIKE ANY (‘Boy%’, ‘%Girls%’);

което дава следния резултат:

Нови JSON функции

В допълнение към количествения LIKEоператор, който ви позволява да търсите текст и полуструктурирани данни, списъкът с функции в областта на типа данни JSON също е завършен.

Тук Google добави следните JSON функции. Добрата новина за това е фактът, че те вече са общодостъпни [1]:

JSON_ARRAY: Създава JSON масив.

JSON_ARRAY_APPEND: Добавя JSON данни в края на JSON масив.

JSON_ARRAY_INSERT: Вмъква JSON данни в JSON масив.

JSON_OBJECT: Създава JSON обект.

JSON_REMOVE: Произвежда JSON с премахнати посочени JSON данни.

JSON_SET: Вмъква или замества JSON данни.

JSON_STRIP_NULLS: Премахва JSON нули.

LAX_BOOL: Опитва се да преобразува JSON стойност в SQL BOOL стойност.

LAX_FLOAT64: Опитва се да преобразува JSON стойност в SQL FLOAT64 стойност.

LAX_INT64: Опит за конвертиране на JSON стойност в SQL...