mysql 5.7 虚拟列的表达式
expression for mysql 5.7 virtual column
mysql table 有列 order-id, order-item-id。需要为生成的列创建一个表达式(5.7 的新功能)请查看 v 虚拟生成列的图像查看图像以便于理解。表名是 daily-orders
由于 generated columns 的限制,您无法创建包含子查询的表达式:
Subqueries, parameters, variables, stored functions, and user-defined functions are not permitted.
由于要获取多条记录中数据的信息,必须使用子查询,这是不允许的。但是,您可以创建一个视图而不是包含此附加数据的生成列。以下 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
mysql table 有列 order-id, order-item-id。需要为生成的列创建一个表达式(5.7 的新功能)请查看 v 虚拟生成列的图像查看图像以便于理解。表名是 daily-orders
由于 generated columns 的限制,您无法创建包含子查询的表达式:
Subqueries, parameters, variables, stored functions, and user-defined functions are not permitted.
由于要获取多条记录中数据的信息,必须使用子查询,这是不允许的。但是,您可以创建一个视图而不是包含此附加数据的生成列。以下 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