论坛首页 综合技术论坛

Sql语句小整理

浏览 3143 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-01-25  
好郁闷,很久没做Web了,很多SQL语句都不懂的怎么用了,现在整理下SQL以后方便查询。

SQL找重复数据

数据库里面有一个表 TEST 里面有1个字段 tname
select * from TEST

数据为

A
A
B
B
C

我们需要找出 A B 因为 5个数据里面只有 A B 是重复的! 写个SQL

select tname from TEST  group by tname having count(tname)>1


筛选数据之二,
A , B表。现在要求从A选出字段a在B中字段b不存在的数据
比如
A表中a字段数据为:1,2,3,3,5,6;
B表中a字段数据为:1,2,5;
则我们要筛选出3,6;
看下面的语句:
java 代码
 
  1. select A.a from A as A where  not exists ( select '1' from B as B where A.a=B.a) ;  
不过经过MySQL测试,数据量大到1w以上最好建立一个索引,比如上面两个表都应该建立一个索引a,否则的话,那速度简直就不是人能忍受的。不知道大家有没有更好的方法。


   发表时间:2007-02-08  
第二个我更习惯的写法是
select A.a from A,B where A.a=B.a(+) and B.a is null
索引肯定是要建的。

0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics