sql语句select * from (select row_number() over (order by @id) as rowid,* from @tbname) as mt
whererowidbetween2and7这是一个sql分页查询语句,这个语句中的asmt是什么意思?...
where rowid between 2 and 7 这是一个sql分页查询语句,这个语句中的as mt是什么意思?
展开
1个回答
展开全部
(select row_number() over (order by @id) as rowid,* from @tbname) 这个是整个查询的子查询。
as mt 是给这个子查询取别名的。 as可以省去,,mt也可以随便用其他字符串替代。。
=========-=============================================================
也就是可以把里面的* 改为mt .* [这样是为了如果只要查询结果的部分记录 可以用 别名加点 的方式方便去检索]
as mt 是给这个子查询取别名的。 as可以省去,,mt也可以随便用其他字符串替代。。
=========-=============================================================
也就是可以把里面的* 改为mt .* [这样是为了如果只要查询结果的部分记录 可以用 别名加点 的方式方便去检索]
追问
那是不是在这种嵌套查询中必须给子句起别名,为什么不起别名会出错
追答
这个我也不太清楚,我也只懂一点点,,我在mysql数据库中试了一下,不加别名是报错的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询