4
我發現這樣的代碼:PostgreSQL - 符號|||是什麼做?
SELECT 'a' ||| 'b';
我試圖谷歌這個操作符的意思,但谷歌忽略了象徵性的數據。 SymbolHound沒有返回任何有意義的結果。
我測試了它一個PostgreSQL 8.4服務器和9.1服務器。
在PostgreSQL 8.4,它是相同字符串連接,有一點不同:
SELECT 'a' ||| 'b'; -- 'ab'
SELECT 'a' || 'b'; -- 'ab'
SELECT 'a' ||| NULL; -- 'a'
SELECT 'a' || NULL; -- NULL
在PostgreSQL 9.1,該操作符沒有定義。
SELECT 'a' ||| 'b'; -- ERROR
SELECT 'a' || 'b'; -- 'ab'
SELECT 'a' || NULL; -- NULL
這是正式記錄的地方嗎?這個配置是特定的嗎?
'|||'的特殊NULL行爲頗具啓發性。 –
你是100%正確的,select * from pg_operator where oprname ='|||';返回的運算符,由函數「textcat_null」定義。 –