今天在查询数据时,遇到一个问题。
通过SQL查询数据,发现表有重复值但是有的列是空的,显然这种情况我们不可能使用distinct的了,因为这里面有空白值,空白值不是重复值。来直接开始
查询效果如下
select *FROM T_BD_MATERIAL_L WDL where
WDL.FMATERIALID='333294'
下面数据这样保留FNAE有值的那一行
解决方法:
有MAX()函数去这一列的最大值就可以解决问题
MAX()求数据库根据条件求最大值
select FMATERIALID AS 物料内码 ,MAX(FNAME) AS 物料名称, MAX(FSPECIFICATION) AS 物料规格 FROM T_BD_MATERIAL_L WDL where
WDL.FMATERIALID='333294' GROUP BY FMATERIALID
效果