mysql IFNULL实际使用

mysql IFNULL实际使用

  • 需求
    • sql 写法

需求

表:srm_supplier , srm_sup_company, srm_company
关系:srm_supplier 一对多 srm_sup_company, srm_company 多对一 srm_sup_company
问题:取所有srm_supplier信息,其中companyName存在srm_company中,需要取指定的companyName 值,如果存在则显示指定的值,如果不存在取第一条srm_company值

sql 写法

SELECT sup.id,
IFNULL(
(SELECT company.company_name from srm_supplier supplier, srm_sup_company supcompany,srm_company company WHERE supcompany.supplier_id = supplier.id AND company.id = supcompany.company_id and supplier.id = sup.id 
and (company.company_name = 'XXX公司')),
(SELECT company.company_name from srm_supplier supplier, srm_sup_company supcompany,srm_company company WHERE supcompany.supplier_id = supplier.id AND company.id = supcompany.company_id and supplier.id = sup.id LIMIT 1)
) companyname
from srm_supplier sup ;

mysql IFNULL实际使用_第1张图片

你可能感兴趣的:(mysql)