sql语句如下:
select a.party_id, a.parent_party_id,a.lan_id,a.org_level,a.region_id,a.channel_type,
(select ch.parent_channel_id from es_org_channel ch where ch.channel_id=a.channel_type and ch.source_from =a.source_from) parent_channel_id,
(select c.org_name from es_organization c where a.parent_party_id = c.party_id and c.status_cd='00A' and c.source_from='CTWH') parent_org_name,
a.org_code, a.org_name, a.org_level, a.org_type_id, b.org_type_name ,
(SELECT F.LAN_NAME FROM ES_LAN F WHERE A.LAN_ID = F.LAN_ID and F.source_from='CTWH') lan_name,
(SELECT G.REGION_NAME FROM ES_COMMON_REGION G WHERE A.REGION_ID = G.REGION_ID and G.source_from='CTWH') city_name,
a.org_content, a.union_org_code from es_organization a, es_organization_type b where a.org_type_id = b.org_type_id and a.parent_party_id='1600100815261549600001' and a.status_cd='00A' and a.source_from = b.source_from and a.source_from = 'CTWH' order by a.party_id
3 个解决方案
#1
一共用到了 4 个子查询,看看具体是哪个出错了;
子查询一下子,找到了 2+ 记录,不知道应该给你返回哪个了,所以报了这个错出来;
子查询一下子,找到了 2+ 记录,不知道应该给你返回哪个了,所以报了这个错出来;
#2
能否加个distinct 在前面可以吗
#3
可以加,但是不一定能解决问题。
如果查出来的两个值相同,还可以,如果不同,还是会出现这个问题的;
#1
一共用到了 4 个子查询,看看具体是哪个出错了;
子查询一下子,找到了 2+ 记录,不知道应该给你返回哪个了,所以报了这个错出来;
子查询一下子,找到了 2+ 记录,不知道应该给你返回哪个了,所以报了这个错出来;
#2
能否加个distinct 在前面可以吗
#3
可以加,但是不一定能解决问题。
如果查出来的两个值相同,还可以,如果不同,还是会出现这个问题的;