首先,我是 SQL 新手,在设置一个简单的存储过程时遇到了麻烦。我正在学习 SQL,在这里需要一些帮助。
设想:
我有两张桌子,
Fruits
并且Oranges
Fruits
有以下列- 水果ID
- 水果季节
Oranges
有以下列- 器官ID
- 水果ID
- 橙名
我想创建一个存储过程来返回Fruits
一个额外的列计数,这个计数将是 id 中的水果总数Oranges
。
谢谢
首先,我是 SQL 新手,在设置一个简单的存储过程时遇到了麻烦。我正在学习 SQL,在这里需要一些帮助。
设想:
我有两张桌子,Fruits
并且Oranges
Fruits
有以下列
Oranges
有以下列
我想创建一个存储过程来返回Fruits
一个额外的列计数,这个计数将是 id 中的水果总数Oranges
。
谢谢
试试这个:
CREATE PROC ProcName
AS
SELECT f.Id, f.fruitSeason, COUNT(g.fruitId) 'Total Fruits in Oranges'
FROM @fruits f
LEFT JOIN @Oranges g ON g.fruitId = f.Id
GROUP BY f.Id, f.fruitSeason
听起来你想要这个:
create procedure yourFruit
as
select f.fruitid,
f.fruitSeason,
o.cnt TotalFruitOranges
from fruits f
left join
(
select count(*) cnt, fruitid
from oranges
) o
on f.fruitid = o.fruitid
GO