SQL 服务器 -- order by 子句依赖于 (field-list, type) 对
SQL Server -- order by clause is dependent on (field-list, type) pair
查询,比如"Query-1":
select THIS_FIELD, THAT_FIELD, THAT_COUNT
from THE_TABLE
order by THIS_FIELD
当 THIS_FIELD
的类型为 String
时, 运行 很好。但是,"Query-2" 下面:
select THIS_FIELD, THAT_FIELD, THAT_COUNT, *
from THE_TABLE
order by THIS_FIELD
isGiving me an Ambiguous column name
错误发生
THIS_FIELD
在 select 子句中 when
THIS_FIELD
是 String
类型,当 THIS_FIELD
这里是一个整数时 运行 OK。
我该如何解决这个问题?
TIA。
如果查询如所写,您可能只需要 the_table 上的别名或在列前加上 table 名称,以便 sql 知道要加载什么。
select ta.THIS_FIELD, ta.THAT_FIELD, ta.THAT_COUNT, ta.*
from THE_TABLE ta
order by ta.THIS_FIELD
这只是为了让它发挥作用。这是非关系的。
select THIS_FIELD, THAT_FIELD, THAT_COUNT, *
from THE_TABLE
order by 1
这将起作用并按顺序排列。
查询,比如"Query-1":
select THIS_FIELD, THAT_FIELD, THAT_COUNT
from THE_TABLE
order by THIS_FIELD
当 THIS_FIELD
的类型为 String
时,运行 很好。但是,"Query-2" 下面:
select THIS_FIELD, THAT_FIELD, THAT_COUNT, *
from THE_TABLE
order by THIS_FIELD
isGiving me an Ambiguous column name
错误发生
THIS_FIELD
在 select 子句中 when
THIS_FIELD
是 String
类型,当 THIS_FIELD
这里是一个整数时 运行 OK。
我该如何解决这个问题?
TIA。
如果查询如所写,您可能只需要 the_table 上的别名或在列前加上 table 名称,以便 sql 知道要加载什么。
select ta.THIS_FIELD, ta.THAT_FIELD, ta.THAT_COUNT, ta.*
from THE_TABLE ta
order by ta.THIS_FIELD
这只是为了让它发挥作用。这是非关系的。
select THIS_FIELD, THAT_FIELD, THAT_COUNT, *
from THE_TABLE
order by 1
这将起作用并按顺序排列。