0

2 つのテーブルを結合してビューを作成しています。区切り記号を使用して単一のセルにグループ化した列ライセンスがあります。ライセンス フィールドには、参照テーブル内の対応するサービスの null 値が含まれる場合があります。そのため、特定のエージェントのライセンス列を表示すると、区切り記号とともに null 値が表示されるはずです。

たとえば、エージェントid = 802の彼のサービス列は、次のようなセパレーターを使用して多くのサービスでグループ化されています

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

ここで、投資と個人ローンのライセンス値は NULL ですが、得られるのは123456||34567 です。null 値は自動的に拒否されます...しかし、Null を結果セットに含める必要があります....私のクエリは

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`;
4

1 に答える 1

0

IFNULL()null 値を以下を含む文字列に変換するために使用できます'null'

group_concat(IFNULL(`a`.`license`, 'NULL') separator '||') AS `license`,
于 2013-03-12T06:55:40.990 に答える