2013-04-12 15 views
1

我有以下兩行的SQL查詢:MySQL的IF給我BLOB

if(tb2.show_count = 0, 'hidden', count(tb1.user_id)) as 'count' 
if(tb2.show_name = 0, 'hidden', tb1.name) as 'name' 

第一行給我blob和第二行返回無論是基於對show_name

namehidden

我如何對第一行做同樣的事情?即阻止它給我一個blob並讓它返回counthidden基於值show_count

回答

2

嘗試:

if(tb2.show_count=0, 'hidden', cast(count(tb1.user_id) as char(10))) as 'count' 

- 如果的如果評估不同類型的結果,他們返回爲BLOB,所以答案是對數轉換爲字符類型(同爲「隱藏」 )。

-1

在MySQL Workbench中,轉到:「編輯 - >首選項... - > SQL查詢」或「編輯 - >首選項... - > SQL編輯器」(取決於您所使用的Workbench版本)。

選中「將BINARY/VARBINARY作爲非二進制字符串」選項以顯示實際值。