我運行下面的SQL查詢我的web應用程序:檢查布爾真/假結果,PostgreSQL的查詢
SELECT EXISTS (
SELECT id
FROM user
WHERE membership=1244)
我期待真(布爾數據)的結果,但我得到't'或'f'爲假。 如何讓它返回到我的lua代碼一個標準的布爾值?
我發現下面的帖子:
Reading boolean correctly from Postgres by PHP
所以我想我的代碼更改爲類似這樣:
SELECT EXISTS ::int (
SELECT id
FROM user
WHERE membership=1244)
或
SELECT ::INT (SELECT EXISTS (
SELECT id
FROM user
WHERE membership=1244))
但我m得到一個語法錯誤。
你能說出處理這個問題的最佳方法嗎?我應該將結果't'投射到布爾值嗎?或者有沒有辦法告訴postgresql返回true/false而不是't'/'f'?
謝謝。
在Postgres 9.1.9中,它工作正常。請參閱http://sqlfiddle.com/#!1/bfe1e/2 此外,PHP的0或1作爲布爾值 –
我的錯誤。抱歉。 –
沒問題。你給了我一個使用sqlfiddle的藉口。我剛剛瞭解到的,所以我很興奮。 :) –