我正在尝试在订单表中为每个国家/地区返回邮政编码数据,这应该是一个简单的查询,但我无法让它工作。查询执行正常,但结果的每一行只是:
POSTCODE
| COUNTRY
| id<国家ID 我的查询如下:
SELECT 'POSTCODE' as billing_postcode, 'COUNTRY' as Title, billing_country_id
FROM [DB].[dbo].[Order]
INNER JOIN [DB].[dbo].[Country]
ON country_id = billing_country_id
GROUP BY billing_country_id
下面是我得到的输出示例: -
为什么不返回邮政编码+国家/地区?谁能看到我在这里做错了什么?
由于
编辑*
基本订单表结构:
OrderId | billing_postcode | billing_country_id
基本国家/地区表格结构:
country_id |标题
答案 0 :(得分:2)
您选择了字符串PostCode
和Country
而非实际列。
SELECT POSTCODE as 'billing_postcode', COUNTRY as 'Title', billing_country_id
FROM [DB].[dbo].[Order]
INNER JOIN [DB].[dbo].[Country]
ON country_id = billing_country_id
GROUP BY billing_country_id
从您的编辑中,您似乎需要切换列/别名:
SELECT billing_postcode AS 'POSTCODE', Title as 'Country', billing_country_id
FROM [DB].[dbo].[Order]
INNER JOIN [DB].[dbo].[Country]
ON country_id = billing_country_id
答案 1 :(得分:1)
这样做。从列名中删除撇号,而不是在别名部分
中使用它SELECT POSTCODE as 'billing_postcode', COUNTRY as 'Title', billing_country_id
FROM [DB].[dbo].[Order]
INNER JOIN [DB].[dbo].[Country]
ON country_id = billing_country_id
GROUP BY billing_country_id