如何从一个没有主键的表中,每次读取一条记录,读遍所有记录而不发生重复?多谢了。 select distinct 你的列 from 表 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用 DISTINCT 消除重复项DISTINCT 关键字可从 SELECT 语句的结果中除去重复的行。如果没有指定 DISTINCT,那么将返回所有行,包括重复的行。例如,如果在 titleauthor 中选择所有作者 ID 时未使用 DISTINCT,那么将会返回下列行(其中包括一些重复的行):USE pubsSELECT au_idFROM titleauthor下面是结果集:au_id ----------- 172-32-1176 213-46-8915 213-46-8915 238-95-7766 267-41-2394 267-41-2394 274-80-9391 409-56-7008 427-17-2319 472-27-2349 486-29-1786 486-29-1786 648-92-1872 672-71-3249 712-45-1867 722-51-5454 724-80-9391 724-80-9391 756-30-7391 807-91-6654 846-92-7186 899-46-2035 899-46-2035 998-72-3567 998-72-3567 (25 row(s) affected)而使用了 DISTINCT 后,就能够除去重复项,而只查看唯一的作者 ID:USE pubsSELECT DISTINCT au_idFROM titleauthor下面是结果集:au_id ----------- 172-32-1176 213-46-8915 238-95-7766 267-41-2394 274-80-9391 409-56-7008 427-17-2319 472-27-2349 486-29-1786 648-92-1872 672-71-3249 712-45-1867 722-51-5454 724-80-9391 756-30-7391 807-91-6654 846-92-7186 899-46-2035 998-72-3567 (19 row(s) affected)重要 涉及 DISTINCT 的语句的输出取决于列的排序规则或应用 DISTINCT 的表达式。有关不同排序规则的效果的更多信息,请参见 SQL Server 排序规则基础知识。 对于 DISTINCT 关键字来说,各空值将被认为是相互重复的内容。当 SELECT 语句中包括 DISTINCT 时,不论遇到多少个空值,在结果中只返回一个 NULL。说明 为了与 SQL-92 标准和其它的 Microsoft® SQL Server™ 版本兼容,ALL 关键字可以显式请求所有行。但是,由于 ALL 是默认的,所以无需指定它。 select 的时候去出掉重复记录。 用游标呀declare CursorName Cursor For select Fld1,Fld2 from YouTableFor ReadDeclare @Fld1 Varchar(10), @Fld2 Varchar(10)Fetch First From CursorName Into @Fld1,@Fld2While @@Fetch_Status=0 ......处理 Fetch Next From CursorName Into @Fld1,@Fld2Loop 兄弟多谢了!因为我以前没有用过游标,不知如何在C++定义游标?declare ...这些代码在C++可以通过编译吗?还是应该怎么做才行? 赫赫,他们回答的都是在数据库,sql中,在存储过程中用游标的。 select distinct * from table 一个很简单的时间类型转换问题!!急! 数据库每天有15分钟左右的缓慢期 SQL Server 启动时发生了严重的异常 c0000005。 来个帮忙 看看 存储过程 事务 上面的问题 求SQL语句怎么写 sql行列转换 请问如何清楚缓存中的数据?? 关于sqlserver登录账户权限问题 请问各位有没有关于SQLSERVER2000 FOR WINDOWS2003 的补丁下载? 请教SQL server LOCKS问题,急! 表的拆分与合并 看看怎么设计查询效率最高!
DISTINCT 关键字可从 SELECT 语句的结果中除去重复的行。如果没有指定 DISTINCT,那么将返回所有行,包括重复的行。例如,如果在 titleauthor 中选择所有作者 ID 时未使用 DISTINCT,那么将会返回下列行(其中包括一些重复的行):USE pubs
SELECT au_id
FROM titleauthor下面是结果集:au_id
-----------
172-32-1176
213-46-8915
213-46-8915
238-95-7766
267-41-2394
267-41-2394
274-80-9391
409-56-7008
427-17-2319
472-27-2349
486-29-1786
486-29-1786
648-92-1872
672-71-3249
712-45-1867
722-51-5454
724-80-9391
724-80-9391
756-30-7391
807-91-6654
846-92-7186
899-46-2035
899-46-2035
998-72-3567
998-72-3567 (25 row(s) affected)而使用了 DISTINCT 后,就能够除去重复项,而只查看唯一的作者 ID:USE pubs
SELECT DISTINCT au_id
FROM titleauthor下面是结果集:au_id
-----------
172-32-1176
213-46-8915
238-95-7766
267-41-2394
274-80-9391
409-56-7008
427-17-2319
472-27-2349
486-29-1786
648-92-1872
672-71-3249
712-45-1867
722-51-5454
724-80-9391
756-30-7391
807-91-6654
846-92-7186
899-46-2035
998-72-3567 (19 row(s) affected)重要 涉及 DISTINCT 的语句的输出取决于列的排序规则或应用 DISTINCT 的表达式。有关不同排序规则的效果的更多信息,请参见 SQL Server 排序规则基础知识。
对于 DISTINCT 关键字来说,各空值将被认为是相互重复的内容。当 SELECT 语句中包括 DISTINCT 时,不论遇到多少个空值,在结果中只返回一个 NULL。说明 为了与 SQL-92 标准和其它的 Microsoft® SQL Server™ 版本兼容,ALL 关键字可以显式请求所有行。但是,由于 ALL 是默认的,所以无需指定它。
declare CursorName Cursor For
select Fld1,Fld2 from YouTable
For Read
Declare @Fld1 Varchar(10),
@Fld2 Varchar(10)
Fetch First From CursorName Into @Fld1,@Fld2
While @@Fetch_Status=0
......处理
Fetch Next From CursorName Into @Fld1,@Fld2
Loop
因为我以前没有用过游标,不知如何在C++定义游标?
declare ...这些代码在C++可以通过编译吗?
还是应该怎么做才行?