| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3620 人关注过本帖
标题:Order by 的问题
取消只看楼主 加入收藏
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
结帖率:100%
收藏
 问题点数:0 回复次数:12 
Order by 的问题
今天看书看出个问题来了,有如下代码:
程序代码:
use Northwind
select p.*
from (select ProductID,ProductName,CategoryID,UnitPrice '单价' 
from dbo.Products) as p
order by '单价'

书上的源码,要说明的意思是,“当表的字段在Select子查询中使用的是另外指定的别名时,只能使用别名来限定其在
Order by子句中的行”意思我大概明白了,可是执行起来,却给我报了这么个错:消息 408,级别 16,状态 1,第 1 行
在 ORDER BY 列表中的位置 1 处遇到常量表达式。双击时高亮的是“select p.*”,一开始我想是书写错了,可这本书是胡百敬写的,素有铁人之称的人物应该不会出这种错,果不其然在别人机器上运行却是好的,听人家说是没有打补丁,请问下大家是怎么回事?是补丁的问题吗?
搜索更多相关主题的帖子: Order 
2008-10-08 22:13
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
呃。。还真是'号的问题,去掉了就好了,你试的时候, 加了引号的么?奇怪,书上写的就是引号,还有为什么写引号,报的常量错误点击却亮在了select p.*”我觉得应该亮在
order by '单价'这。。


仁者乐膳,智者乐睡。我都爱~
2008-10-08 22:44
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
这个引号的作用,在于对p表来查询,因为就最外层而言,Select p.*是不能识别unitprice是什么的,这时的p表只有单价这一列,而没有unitprice这列。问题的问题是,怎么你用引号就行,我用引号就不行。莫非是人品问题?

[[it] 本帖最后由 小仙 于 2008-10-8 23:14 编辑 [/it]]


仁者乐膳,智者乐睡。我都爱~
2008-10-08 23:11
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
呃。。。楼下有高人现身吗?期待个。


仁者乐膳,智者乐睡。我都爱~
2008-10-09 12:47
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
呃。。话说很少有人注意到这个问题还是。。。。


仁者乐膳,智者乐睡。我都爱~
2008-10-09 22:34
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
我用的SQL2005,需要什么补丁呢??有的人打了引号也可以,我打了引号就报错,不晓得是什么问题哦。


仁者乐膳,智者乐睡。我都爱~
2008-10-11 14:17
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
呃。。那问题看来很大。。。有哪位知道是需要打什么补丁。


仁者乐膳,智者乐睡。我都爱~
2008-10-11 18:23
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
回复 15# hmhz 的帖子
首先谢谢你的分析,不过我使用的是SQL2005前面已经提到过,再者呢,我的语句在帖子里,只能写单价,写unitprice就会报错。现在的问题是,单价那到底需要不需要引号,有的人说要,有的人说不要,有的人说要和不要都可以。。很迷茫的。。。
重点倒不在排序上。。。


仁者乐膳,智者乐睡。我都爱~
2008-10-11 21:45
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
回复 15# hmhz 的帖子
“前面的单价是字段名,难道你的单价是字段名吗?后面的单价是排序用的字段名”这句话我不大懂。。。这个单价一直是在表P中,就是一个字段啊,你的意思是??肯定不是一个值啊。


仁者乐膳,智者乐睡。我都爱~
2008-10-11 21:53
小仙
Rank: 7Rank: 7Rank: 7
来 自:光之谷
等 级:贵宾
威 望:39
帖 子:1812
专家分:1
注 册:2008-8-8
收藏
得分:0 
晕。。在这里,unitprice是P表中不存在的字段,所以不能用unitprice排序。P表中只存在单价这一列。但是我不知道,这个字段:单价到底该不该加上引号呢?


仁者乐膳,智者乐睡。我都爱~
2008-10-11 21:57
快速回复:Order by 的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012732 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved