sqldistinct
A. sql语句SELECT DISTINCT
把上面order by之后的BusinessId 改成 date 就行了
B. SQL ,distinct
你的要求很有意思!!
你要求longitude,latitude完全不重复的行,也就是说要剔除longitude中重复的列和latitude重复的列???
不知道是不是这个意思,这个SQL语句是可以实现的
select longitude,latitude,currenttime from aa where longitude in
(select longitude from aa group by longitude having count(longitude)=1) and latitude in (select latitude from aa group by latitudehaving count(latitude)=1) order by currenttime
上面的语句实现的是longitude中不重复的行,latitude中不重复的行的所有组合
C. 菜鸟求助sql语句distinct用法
select distinct score.sid,student.sid from score,student
其实我很奇怪,你这俩表没任何联系的吗? 这样数据会重复的。
所以我觉得以上用distinct 还不一定真正能达到你要求。
因为这样的distinct只会筛选掉两条一模一样的数据。也就是说这两条数据要所有东西一样,才会筛选掉。
而和字段没关系。
D. sql中如何distinct多个字段
本来distinct
就是可以多个字段的,不过我估计你的意思应该是多个字段去除重复,所以可以:
select
字段1,字段2
from
表
group
by
字段1,字段2
E. SQL中DISTINCT的位置
您好,很高兴为您解答!
distinct 一般是放在select之后;
如果是所有查询出来的都要distinct,直接在select后加distinct 关键词就可以;
如果是单列,可以用distinct(col)函数
希望我的回答对您有用!
F. 关于SQL的distinct 用法
根据你的错误提示 你的 version 字段的数据类型为 text 类型,而 distinct函数是不能用在text 数据类型的字段,你可以把此字段该为 nvarchar(100) 试试。
另外,你只是想去掉 version 相同的记录,你的意思是不是 同一个 version 中保留一条记录,这样的话不需用到 distinct函数,如果id 是 唯一标识,你可试一下
select * from [NetBank_TaskVersion] where id in
(
select top 1 id from [NetBank_TaskVersion] group by version
)
G. sql语句 distinct 查询疑问
select * from 新闻表 group by classid having id=max(id)
id是新闻表(不是分类表)的自动编号,classid是分类id,对应新闻分类表的id字段。
H. sql distinct的用法
先mark,再想解决方案
先上代码,针对SQLSERVER
--inserttestdata
TRUNCATEtabletable1;
INSERTINTOTable1VALUES('ls',9,'2013-08-07')
INSERTINTOTable1VALUES('zs',2,'2013-08-09')
INSERTINTOTable1VALUES('ls',7,'2013-08-08')
INSERTINTOTable1VALUES('zs',3,'2013-08-10')
INSERTINTOTable1VALUES('ls',8,'2013-08-06')
select*from(
selectROW_NUMBER()over(
PARTITIONBYNameorderby[Date]desc
)asrn,*
fromTable1
)a
wherern=1
再上结果
rn ID Name Num Date
-------------------- ----------- ---------- ----------- ----------
1 3 ls 7 2013-08-08
1 4 zs 3 2013-08-10
思路是按名称分组,每组按日期倒序并将每个组添加行号,最后取出行号为1的记录即可
I. SQL中distinct的用法是什么
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。
表A:
返回的结果为两行,这说明distinct并非是对xing和ming两列“字符串拼接”后再去重的,而是分别作用于了xing和ming列。
3.COUNT统计
select count(distinct name) from A; --表中name去重后的数目, SQL Server支持,而Access不支持
count是不能统计多个字段的,下面的SQL在SQL Server和Access中都无法运行。
select count(distinct name, id) from A;
若想使用,请使用嵌套查询,如下:
select count(*) from (select distinct xing, name from B) AS M;
4.distinct必须放在开头
select id, distinct name from A; --会提示错误,因为distinct必须放在开头
5.其他
distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。例如,假如表A有“备注”列,如果想获取distinc name,以及对应的“备注”字段,想直接通过distinct是不可能实现的。但可以通过其他方法实现关于SQL Server将一列的多行内容拼接成一行的问题讨论
J. sql语句中DISTINCT是什么意思
DISTINCT 这个关键词的意思是用于返回唯一不同的值。
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。SELECT DISTINCT 表示查询结果中,去掉了重复的行;Distinct表示去掉重复的行。
(10)sqldistinct扩展阅读:
sql语句中使用DISTINCT的注意事项:
如果指定了 SELECT DISTINCT,那么 ORDER BY 子句中的项就必须出现在选择列表中,否则会出现错误。
比如SQL语句:SELECT DISTINCTCompanyFROM Orders order byCompanyASC是可以正常执行的。
但是如果SQL语句是:SELECT DISTINCTCompanyFROM Orders order byNumASC是不能正确执行的,在ASP中会提示“ORDER BY 子句与 (Num) DISTINCT 冲突”错误。
SQL语句修改成:SELECT DISTINCTCompany,NumFROM Orders order byNumASC可以正常执行
参考资料:网络-DISTINCT