我需要解析postgresql函數中的電話號碼。我正在使用水線ORM,基本上是在javascript中進行這種計算。現在我想將整個邏輯移到postgresql存儲的函數中。但瓶頸在於libphonenumber庫的可用性。它在Node.js中可用,但不知道如何在postgresql中使用它。在postgresql函數中使用libphonenumber庫
有什麼想法?
我需要解析postgresql函數中的電話號碼。我正在使用水線ORM,基本上是在javascript中進行這種計算。現在我想將整個邏輯移到postgresql存儲的函數中。但瓶頸在於libphonenumber庫的可用性。它在Node.js中可用,但不知道如何在postgresql中使用它。在postgresql函數中使用libphonenumber庫
有什麼想法?
有可供libphonenumber已經
CREATE EXTENSION pg_libphonenumber;
SELECT parse_phone_number('03 7010 1234', 'AU') = parse_phone_number('(03) 7010 1234', 'AU');
CREATE TABLE foo
AS
SELECT DISTINCT parse_phone_number(ph, 'AU')
FROM (VALUES
('03701'),
('03 7010 1234'),
('(03) 7010 1234')
) AS t(ph);
因爲它是目前在C++和JavaScript,你可以:
安裝並加載PL/V8和使用它作爲一個PL/V8存儲過程,一個JavaScript庫;或者
通過將C++函數包裝在C++版本的庫中,爲PostgreSQL編寫一個C擴展,它將函數公開爲SQL可調用函數。
不用說,前者可能更容易,除非您對C編程感到滿意。
考慮接受我的答案C綁定,雖然遲到了遊戲這是你在找什麼。 –