如何解决在子选择T-SQL中聚合函数
我只是刚开始使用T-SQL并尝试编写更新,但是我需要在子选择中使用一个聚合函数,而我似乎没有。
这是我目前拥有的
Update Roysched
Set Royalty = (Royalty - 2)
Where title_id in (select title_id from sales where SUM(qty) > 30)
但是我收到关于子选择中的聚合的错误
解决方法是什么?
解决方法
您不能在where
子句中使用聚合词-这就是having
子句的用途。请注意,您还缺少group by
子句:
UPDATE roysched
SET royalty = (royalty - 2)
WHERE title_id IN (SELECT title_id
FROM sales
GROUP BY title_id
HAVING SUM(qty) > 30)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。