如何实现distinct对查询几列中的某一列不重复。

时间:2021-09-14 00:49:52
例如我的表有定单代码(code),定单价格(price),定单日期(date),定货人(name)等字段。我想实现只对定单代码不重复(code)。请问如何实现。

14 个解决方案

#1


最好通过设置主键来实现,或者设置code为unique

#2


select distinct code,price,date,name  from table;

#3


不重复可能丢失数据.

#4


select distinct code,price,date,name  from table;这样写不可以吧。因为price字段有可能是相同的。我只需要code是不同的

#5


如何把一个代码设置为一个序列。

#6


insert into table(column) values(sequence.nextval)

#7


select code,... from table group by code

#8


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE

#9


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE) DATE,MAX(NAME) NAME
FROM TABLE
GROUP BY CODE

#10


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE_T) "DATE",MAX(NAME) NAME
FROM TEST_O
GROUP BY CODE

#11


select code, date,price,name group by code;
服务器提示不是group by 表达式。

SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE
为什么要加max,我并不要求最大值,我只想要code不重复显示,其他字段的所有值都显示。

#12


你的要求本来就是显示其中一行记录,所以不用在乎是那一条,MAX是为了解决你所说的那个错误。

#13


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE

对rs.getString("name")提示无效的列名。

请问是什么原因。注释掉这行后确实是显示一行代码。

#14


刚才写的不够详细。只有rs.getString("code")能正常显示,其他字段都提示无效列名。

#1


最好通过设置主键来实现,或者设置code为unique

#2


select distinct code,price,date,name  from table;

#3


不重复可能丢失数据.

#4


select distinct code,price,date,name  from table;这样写不可以吧。因为price字段有可能是相同的。我只需要code是不同的

#5


如何把一个代码设置为一个序列。

#6


insert into table(column) values(sequence.nextval)

#7


select code,... from table group by code

#8


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE

#9


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE) DATE,MAX(NAME) NAME
FROM TABLE
GROUP BY CODE

#10


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE_T) "DATE",MAX(NAME) NAME
FROM TEST_O
GROUP BY CODE

#11


select code, date,price,name group by code;
服务器提示不是group by 表达式。

SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE
为什么要加max,我并不要求最大值,我只想要code不重复显示,其他字段的所有值都显示。

#12


你的要求本来就是显示其中一行记录,所以不用在乎是那一条,MAX是为了解决你所说的那个错误。

#13


SELECT CODE,MAX(PRICE) PRICE,
MAX(DATE),MAX(NAME)
FROM TABLE
GROUP BY CODE

对rs.getString("name")提示无效的列名。

请问是什么原因。注释掉这行后确实是显示一行代码。

#14


刚才写的不够详细。只有rs.getString("code")能正常显示,其他字段都提示无效列名。