不知为啥,当我得查询中出现distinct时,order by 中必须包含要查询的列,否则报错。

SELECT DISTINCT
a.DetailId,
a.OrderId,
a.ProductId,
pi2.BarCode,
pi1.ProductName,
pi1.productCode,
pi1.spec,
a.UnitId,
ui.UnitName,
SNUM(a.DetailId) as Quantity,
a.Discount,
a.UnitPrice,
a.TaxRate,
a.ProductMoney,
a.TaxMoney,
a.PayableMoney,
a.IsGiveAway,
a.DetailId AS ColGuid,
a.ParentGuid,
a.DetailId AS OrderDetailId,
a.OrderId AS RelevanceOrder,
a.Memo,
pi2.SalePrice AS InitUnitPrice,
a.SEQ, ---必须包含这个,否则报错
a.Quantity - SNUM(a.DetailId) AS OutQuantity
FROM
SaleOrderDetail a
LEFT JOIN ProductInfo pi1 ON a.ProductId = pi1.ProductId
LEFT JOIN ProductPrice pi2 ON a.ProductId = pi2.ProductId
AND pi2.unitid = a.unitid
LEFT JOIN UnitInfo ui ON a.UnitId = ui.UnitId
WHERE
a.DetailId IN (SELECT COLUMN_VALUE FROM TABLE(SPLITSTR(IDS, ',')))
ORDER BY
a.SEQ ASC

还有就是从程序传入存储过程中的参数值,如果是个空字符串,在存储过程中获取也是个null,这里要注意。

动态sql时,sql语句不能用NVARCHAR2类型,一定要用VARCHAR2类型。

distinct与order by的更多相关文章

  1. 不要随随便便的distinct和order by

    相关查询非常慢,通过程序拿到了相关sqlexplainexplain SELECT DISTINCT(o.orders_id), o.oa_order_id, customers_email_addr ...

  2. 解决distinct与order by 的冲突

    sql="select distinct id from test order by otherfield desc" 需要找到不同的id,同时又想让记录按fbsj排序.但是这样一 ...

  3. MySql5.7 Distinct与Order By同时使用报错的解决方案

    mysql5.7版本中,如果DISTINCT和order by一起使用将会报3065错误,sql语句无法执行.这是由于5.7版本语法比之前版本语法要求更加严格导致的. 解决方案: 1.vim /etc ...

  4. mysql数据去重并排序使用distinct 和 order by 的问题

    比如直接使用: SELECT distinct mobileFROM table_aWHERE code = 123ORDER BY a_ime desc 在本地mysql数据库没有错,在线上的数据库 ...

  5. sql中distinct和order by问题的解决方案

    需求:根据PID字段对数据去重,根据Sort字段排序,需要显示这个两个字段. 如图,这是原始数据,先排序: 排序后发现两个项是重复的,需要去除一个, 因为Distinct对检查Select里面的每一列 ...

  6. distinct 与order by 一起用

    distinct 后面不要直接跟Order by , 如果要用在子查询用用order by .

  7. 解决Sql中DIstinct与Order By共同使用的冲突问题

    1.需求场景: 需要把最新更新文章的前五名作者展示出来. 2.解决问题第一步: select top 5 creator from table order by updateDate desc 结果: ...

  8. 《MySQL必知必会》检索数据,排序检索数据(select ,* ,distinct ,limit , . , order by ,desc)

    <MySQL必知必会>检索数据,排序检索数据 1.检索数据 1.1 select 语句 为了使用SELECT检索表数据,必须至少给出两条信息一想选择什 么,以及从什么地方选择. 1.2 检 ...

  9. 在SELECT DISTINCT 状况下使用 Order BY Newid() 随机数选出记录

    在日常作业中,有时候可能是一些活动要抽出得奖人或选出抽查的一些名单, 就常常会使用到 Order BY Newid() 的方式来做随机数选出, 但有可能的状况需是要搭配到 DISTINCT 来选出,这 ...

随机推荐

  1. JavaWeb -- Struts1 多文件上传与下载 DownloadAction, DispatchAction

    1. 多文件上传与下载 上传下载jsp: <%@ page language="java" import="java.util.*" pageEncodi ...

  2. NumPy矩阵库

    NumPy - 矩阵库 NumPy 包包含一个 Matrix库numpy.matlib.此模块的函数返回矩阵而不是返回ndarray对象. matlib.empty() matlib.empty()函 ...

  3. "Entity Framework数据插入性能追踪"读后总结

    园友莱布尼茨写了一篇<Entity Framework数据插入性能追踪>的文章,我感觉不错,至少他提出了问题,写了出来,引起了大家的讨论,这就是一个氛围.读完文章+评论,于是我自己也写了个 ...

  4. python学习笔记(pict+requests+xml)

    博主尝试了下更换python版本 之前很多脚本改正运行错误后.还是不能正常运行 忙会了半天还是没有成功 只好还原版本 所以下面的代码还没实际运行成功.先记录下 #!/usr/bin/env pytho ...

  5. java JVM 随笔

    先说重点: 对象在堆区 方法在栈区 变量在方法区,常量池在方法区 为什么要了解Java 虚拟机 ? 这个问题一直困惑了我很长一段时间,其实在我们开发的过程中,即使我们不了解JVM也能正常的开发,但是当 ...

  6. OpenCV人脸检测并把图片写成avi视频

    读出某一个文件夹下“jpg”后缀的全部图片后,用的OpenCV自带的人脸检测检测图片中的人脸,调整图片的大小写成一个avi视频. 主要是要记录一下CvVideoWriter的用法和如何从文件夹中读取某 ...

  7. Angular路由的定义和使用

    一.什么是routing(路由) Almost all non-trivial, non-demo Single Page App (SPA) require multiple pages. A se ...

  8. flask bootstrap IE11的 兼容性问题

    在子模板内添加如下代码确保IE11的兼容性问题. {% extends 'bootstrap/base.html' %}{% block metas %} <meta http-equiv=&q ...

  9. C++轮子队-第三周(需求改进&原型设计)

    需求改进&原型设计 一.需求完善 (一)系统功能(补充) 图形界面(图片如下图所示:) 根据需求与组内讨论结果,现归纳图形界面方面需要的设计与相应功能: 数据-图形界面中间类: 数字方块类 N ...

  10. jsp的运行内幕--Tomcat容器对自定义标签的解析过程

    http://blog.sina.com.cn/s/blog_4adc4b090101daqb.html