简体   繁体   English

SQL在内部联接中的AS中选择

[英]SQL select in AS in inner join

I have this kind of query, from that i want to select by category such as Region in ('CENTRAL','EASTERN') as A1 and Region in ('NORTHERN','SOUTHERN') as A2 我有这种查询,我想按类别选择,例如('CENTRAL','EASTERN')中的Region作为A1,选择('NORTHERN','SOUTHERN')中的Region作为A2

How to add this in my query? 如何在我的查询中添加?

SELECT
  locinvaisle.Region AS Region,
  sum(sales_data.QUANTITY/1000) AS UnitMT
FROM
  sales_data
  INNER JOIN locinvaisle ON locinvaisle.Location = sales_data.LOCATION
WHERE
 sales_data.unit = 'KG'
 and
 sales_data.CUSTOMERACCOUNT not in ('CT1008','CT1009')
 group by locinvaisle.Region

I think you can use IF or CASE if your database is common database such as mysql , oracle , mssql : 我认为如果您的数据库是mysqloraclemssql等通用数据库,则可以使用IFCASE

SELECT
  CASE WHEN locinvaisle.Region = 'CENTRAL' OR locinvaisle.Region = 'EASTERN' THEN 'A1'
  CASE WHEN locinvaisle.Region = 'NORTHERN' OR locinvaisle.Region = 'SOUTHERN' THEN 'A2'
  ELSE 'Default'
  END
    AS Region,
  sum(sales_data.QUANTITY/1000) AS UnitMT
FROM
  sales_data
  INNER JOIN locinvaisle ON locinvaisle.Location = sales_data.LOCATION
WHERE
 sales_data.unit = 'KG'
 and
 sales_data.CUSTOMERACCOUNT not in ('CT1008','CT1009')
 group by Region

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM