sql-server – 在OrderBy中忽略别名

栏目: 数据库 · 发布时间: 7年前

内容简介:我们的应用程序中有两个表都有一个ShowOrder列.我们在我们的应用程序中使用NHibernate并使用HQL,我们分别连接第一个表和第二个表的ShowOrder排序的这两个表.这是我的查询的简化版本:一般来说,我们的应用程序没有任何问题.但我们有一个旧的应用程序和一个转换例程来将其数据库转换为我们的新应用程序数据库.

我们的应用程序中有两个表都有一个ShowOrder列.我们在我们的应用程序中使用NHibernate并使用HQL,我们分别连接第一个表和第二个表的ShowOrder排序的这两个表.

这是我的查询的简化版本:

SELECT pr.Id as Id,pr.Title as Title, pr.ShowOrder as ShowOrder 
FROM Process pr 
    INNER JOIN ProcessGroup prg ON pr.GroupId=prg.Id 
ORDER BY prg.ShowOrder,pr.ShowOrder

一般来说,我们的应用程序没有任何问题.但我们有一个旧的应用程序和一个转换例程来将其数据库转换为我们的新应用程序数据库.

每当我们将旧数据库转换为新数据库时,SQL服务器想要执行上述查询时都会发生错误.例外情况说:

A column has been specified more than once in the order by list

如果我们选择没有别名的pr.ShowOrder一切正常.

似乎如果在选择列表中有ShowOrder别名,SQL Server会忽略表别名并假定pr.ShowOrder和prg.ShowOrder是相同的.


以上所述就是小编给大家介绍的《sql-server – 在OrderBy中忽略别名》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

刘强东自述

刘强东自述

刘强东 / 中信出版集团 / 2016-6-1 / 49.00

京东 1998年,京东还只是中关村一个经营光磁生意的小柜台,月营业额仅有几万元,如今则已经成长为中国营收规模超大的互联网企业,2015年全年营收1813亿,总交易额达到4627亿元; 为解决电商“最后一公里”的痛点,创立并自建B2C物流模式; 经常被争议,却始终坚持“不挣快钱”,选择上市不是因为“缺钱”,只为让合作伙伴睡得着觉,为用户和社会创造价值,由此成就让整个华尔街一片京东红......一起来看看 《刘强东自述》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器