我有一个数据类型为Varchar(MAX)的表变量.
我首先插入值'header'然后基于内连接,我接下来将'Details'插入到同一个表变量中.最后,我正在插入"预告片".
我得到的输出顺序为:'header',然后是'trailer',最后是'details'.
我所需的输出顺序如下:
Header
Detail
Trailer
Run Code Online (Sandbox Code Playgroud)
但是我收到了这个订单:
Header
Trailer
Detail
Run Code Online (Sandbox Code Playgroud)
注意:我无法在选择中使用asc/desc.我按照我需要的顺序插入.
如果在外部查询中不包含ORDER BY,请不要指望SQL Server读懂您的想法.无法保证SQL Server将按插入顺序返回数据.你应该在你的表变量中添加一个列[rank]或者什么.当您插入标题时,插入1,对于详细信息行,插入2,然后插入预告片3.现在,您可以添加ORDER BY [rank];到查询的末尾,获得可预测的结果,并且每个人都很高兴.
| 归档时间: |
|
| 查看次数: |
983 次 |
| 最近记录: |