mysql 表有列 order-id、order-item-id。需要为生成列创建表达式(5.7 的新功能)请查看图像 v 虚拟生成列查看图像以便于理解。表名是每日订单
问问题
746 次
1 回答
0
由于对生成列的限制,您不能创建包含子查询的表达式:
不允许使用子查询、参数、变量、存储函数和用户定义函数。
由于您想获取有关多条记录中数据的信息,因此您必须使用子查询,这是不允许的。但是,您可以创建一个视图而不是包含这些附加数据的生成列。以下 sql 语句可以构成这种视图的核心:
select d1.*, d2.NumberOfItems
from dailyorders d1
inner join (select orderid, count(*) as NumberOfItems from dailyorders group by orderid) d2
on d1.orderid=d2.orderid
于 2015-12-14T11:57:47.333 回答