Пока у меня есть следующее:
select WKT, column1, column2
from table
where REGEXP_CONTAINS(WKT, r"-?(?:\.\d+|\d+(?:\.\d*)?)") is true
Это заботится о большинстве случаев, но я все еще получаю следующую ошибку:
ST_GeogFromText failed: Linestring should have at least two unique points, but had 1
Как я могу использовать regex
для фильтрации всех недействительных строк LINESTRING в Google BigQuery? Я не могу использовать ST_NUMPOINTS()
, потому что он принимает объект GEOGRAPHY
, и я не могу преобразовать строку в GEOGRAPHY
, если она недействительна.
Редактировать: LINESTRING WKT имеют следующий формат: LINESTRING (x1 y1, x2 y2, x3 y3, ..., xn yn)
, где каждая пара (xn, yn)
представляет n-ю пару Lat/Long.
WKT
? Можете ли вы предоставить несколько образцов? - person Jan   schedule 30.10.2019LINESTRING (1.00 2.00)
), но они должны иметь более одной пары чисел (например:LINESTRING (1.00 2.00, 3.00 4.00)
) - person manesioz   schedule 30.10.2019