mysql创建视图时新增一列_使用列num_rows创建一个视图 – MySQL

本文介绍如何在MySQL中创建一个视图,该视图在原有数据基础上新增一列`row_num`,作为行号。通过示例展示了一个包含国家、姓名、年龄和价格的表格数据,然后利用变量和自增来实现视图中的行号。在尝试将此逻辑应用于创建视图时遇到了错误,因为视图的SELECT语句中不能直接包含变量。作者寻求解决在视图中添加行号的方法,可能是通过函数或过程,但对这些概念还不熟悉。
摘要由CSDN通过智能技术生成

我需要创建一个视图,其中有一个名为row_num的列,它将插入行号,就像普通表中的自动增量一样.

假设我有这个普通表:

| country | name | age | price |

--------------------------------

| US | john | 22 | 20 |

| France | Anne | 10 | 15 |

| Sweden | Alex | 49 | 10 |

等等…

我想创建的视图是:

| country | name | price | row_num |

------------------------------------

| US | john | 20 | 1 |

| France | Anne | 10 | 2 |

| Sweden | Alex | 5 | 3 |

等等…

我可以用一个select生成row_num:

SELECT @i:=@i+1 AS row_num, testing.country, testing.name, testing.price

FROM testing testing,(SELECT @i:=0) derivedTable

order by name

但我的问题是将上面的查询与创建视图的查询结合起来.

这是我正在尝试的组合查询:

CREATE OR REPLACE view vwx (country, name, price, num_row) AS SELECT mytable.country, mytable.name, mytable.price, @i:=@i+1 AS row_numb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值