2013-03-12 65 views
0

我正在創建一個視圖加入2個表。 我有一個列許可證,我已將其分組到一個單獨的單元格與分隔符。許可證字段可能在引用表中對應的服務具有空值。所以在查看特定代理的許可證列時,它應該顯示空值和分隔符。如何檢查條件,同時在sql中創建視圖

例如,代理id = 802,他的服務列帶分離,看起來許多服務分組像

Mututal Funds||Investments||Life Insurance||Personal Loan 
123456  ||NULL  ||34567   ||NUL 

,其中投資和persoanl貸款許可值爲NULL,但我得到的是123456 || 34567個空值將自動被拒絕......但我需要空將包含在結果集中....我的查詢是

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER 
VIEW `v_agent_service` AS 
select `a`.`agent_id` AS `agent_id`, 
     group_concat(`a`.`license`separator '||') AS `license`, 
     group_concat(`s`.`service_name` separator '||') AS `service_names` 
from 
(`agent_service` `a` left join `service` `s` 
on((`s`.`service_id` = `a`.`service_id`))) 
group by `a`.`agent_id`; 

回答

0

你可以使用IFNULL()轉一個空值到含有'null'的字符串:

group_concat(IFNULL(`a`.`license`, 'NULL') separator '||') AS `license`, 
+0

感謝...但是美麗是我已經發現了前C這個答案荷蘭國際集團烏爾答案......但請繼續烏爾我的未來問題的支持太... – Ree 2013-03-12 07:38:53