【发布时间】:2017-08-04 14:05:25
【问题描述】:
大家好,
I have a table which contains two type of Establishments:
如果 SIRET 为 NULL --> 它是一个企业
如果 SIRET 不为空 --> 这是一个建立
在我的表中,我一直有这样的条件:如果 SIRET 为 NULL,则意味着 SIREN 不是 NULL。
我想要的是在同一列中显示 SIRET 和 SIREN,并按公司名称和(SIRET IF NOT NULL)或(SIREN if Not NULL)对表进行排序
这是我的查询:
select CUSTOMER.CUSTOMER_ID, CUSTOMER.CUSTOMER_RCE_ID,
CUSTOMER.COMM_REGNUM_CUST,CUSTOMER.GROUP_CODE,
CUSTOMER.CUSTOMER_CORPORATE_NAME,
Replace(CUSTOMER.ADDRESS_COMPANY, '|', ', ') as ADDRESS_COMPANY,
CUSTOMER.COUNTRY_CODE, CUSTOMER.POST_CODE, CUSTOMER.CITY,
CUSTOMER.CUSTOMER_ATTRIBUTE1,CUSTOMER.CUSTOMER_ATTRIBUTE2,
CUSTOMER.CUSTOMER_ATTRIBUTE3, CUSTOMER.CUSTOMER_ATTRIBUTE4, CUSTOMER.CUSTOMER_ATTRIBUTE5, CUSTOMER.CREATED_DATE,
CUSTOMER.CREATED_BY,CUSTOMER.UPDATED_DATE, CUSTOMER.UPDATED_BY, CUSTOMER.TENANT_ID,
CUSTOMER.CUSTOMER_ACCOUNT, CUSTOMER.VAT_INTRA, CUSTOMER.VAT_SETTLEMENT,CUSTOMER.IS_HEADQUARTERS,
CUSTOMER.CUSTOMER_SAP_ID, CUSTOMER.ADDRESSGUID, CUSTOMER.SIREN_CORP as SIREN, CUSTOMER.COMMERCIAL_SEGMENT, CUSTOMER.CODE_NAF,
CUSTOMER.JUR_STATUS_COMP, CUSTOMER.SHARE_CAP_AMT,CUSTOMER.IS_ACTIVE_RCE, CUSTOMER.REGISTRATION_PLACE,STATUS.STATUS_NAME ,
CUSTOMER.RCE_ETAB_ID, REPLACE (CUSTOMER.COMM_REGNUM_CUST,' ','') AS SIRET from CUSTOMER
join CUSTOMER_STATUS on CUSTOMER_STATUS.CUSTOMER_STATUS_ID = (
select * from (select CUSTOMER_STATUS_ID from CUSTOMER_STATUS
where CUSTOMER.CUSTOMER_ID = CUSTOMER_STATUS.CUSTOMER_ID order by CUSTOMER_STATUS.UPDATED_DATE desc) CUSTOMER_STATUS where rownum = 1 )
join STATUS on CUSTOMER_STATUS.STATUS_ID = STATUS.STATUS_ID
如何按 CUSTOMER.CUSTOMER_CORPORATE_NAME(COMPANY OR ESTABLISHEMENT NAME) 和另一列(SIRET 或 SIRET 假设如果一个为 NULL,则另一个不是)并将 SIRET 和 SIREN 放在同一列结果中
谢谢你。
【问题讨论】:
-
您使用的是 MySQL 还是 Oracle?不要标记未涉及的产品。
-
如果您尝试更简单的示例代码,您会得到很好的服务,只是您需要询问的部分。