2012-08-16 58 views
2

我試圖放入一個空格,如果該值不是空白,但它似乎只在我運行查詢時輸出一個數字?字段值之前的mySQL空間

CONCAT(address, IF(address2 = '', '', ' ' & address2), ' ', city, ', ', state, ' ', zip) AS theAddress 

查詢輸出上面是:

1234 N. Shore Ave.0 Burbank, CA 41577 

輸出應該是這樣的:

1234 N. Shore Ave. Apartment 223 Burbank, CA 41577 

什麼,我會被錯誤地在這裏幹什麼?

回答

4

試試這個:

CONCAT(address, IF(address2 = '', '', CONCAT(' ', address2)), ' ', city, ', ', state, ' ', zip) AS theAddress 

我覺得你的代碼是什麼這是一個邏輯與之間的空格和地址2

+0

太棒了。這工作!感謝pjama! – StealthRT 2012-08-16 15:09:34

+2

不客氣! – pjama 2012-08-16 15:10:30

2

我覺得應該是另一個concat&

CONCAT(address, IF(address2 = '', '', CONCAT(' ', address2)), ' ', city, ', ', state, ' ', zip) AS theAddress 
             ^here 

' ' & address2返回0和1(true或false)

+0

我們約翰,逗號不起作用。 – StealthRT 2012-08-16 15:09:49

+1

哦,我忽略了它,它應該是另一個'concat' :) – 2012-08-16 15:12:15