gpt4 book ai didi

sql - 城市名称作为列标题

转载 作者:行者123 更新时间:2023-12-04 14:18:17 26 4
gpt4 key购买 nike

我有两个表。

Food Table
--------------------------
ID CityID FoodName
--------------------------
1 1 FoodA
2 1 FoodB
3 1 FoodC
4 2 FoodW
5 2 FoodX
6 2 FoodY
7 2 FoodZ

City Table
--------------------------
ID CityName
--------------------------
1 Memphis
2 Nashville
3 Chattanooga

那么如何使用 CityName 作为列标题并列出该城市的食物。

--------------------------------------
Memphis Nashville Chattanooga
--------------------------------------
FoodA FoodW
FoodB FoodX
FoodC FoodY
FoodZ

我很确定我必须使用 pivot,但我还找不到好的解决方案。这是我到目前为止所取得的成就。

SELECT *
FROM (
SELECT *
FROM Food F
INNER JOIN City C ON C.ID = F.CityID
) DataTable D
PIVOT(F.FoodName FOR C.CityName IN (
[Memphis]
,[Nashville]
,[Chattanooga]
)) PivotTable

最佳答案

您可以使用此查询来获取输出。实际上你在设置数据透视查询时犯了一些错误。

select Memphis,Nashville,Chattanooga 
from
(
select f.ID,c.CityName,f.FoodName
from Food f
inner join City c
on f.CityID=c.id
)result
pivot
(
max(FoodName)
for CityName in(Memphis,Nashville,Chattanooga)
) as pvt

关于sql - 城市名称作为列标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24116055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com