我有一個“產品”表,其中有一varchar[]列用于保留被排除的公司。
當我為特定產品選擇陣列時,我會得到這樣的結果:
SELECT excluded_company_codes FROM product WHERE code = '123'
excluded_company_codes
----------
{'10'}
但是,奇怪的是,當我嘗試使用ANY函式檢查陣列中是否存在公司代碼時,它不起作用:
SELECT '10'=ANY(product.excluded_company_codes) where code = '123'
?column?
----------
false
我在這里做錯了什么?
uj5u.com熱心網友回復:
陣列中的字串包含兩個單引號。如果你想找到它,你必須
SELECT '''10''' = ANY(product.excluded_company_codes)
FROM product
WHERE code = '123';
如果你想避免雙引號,你可以使用美元報價:$$'10'$$。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/498458.html
標籤:PostgreSQL
上一篇:postgresql中的當前設定
