日期:2014-05-17  浏览次数:21028 次

判断数据库指定字段是否存在重复内容应该怎么写sql语句?
我有一个jiaoyi 表,有以下字段:
id          (自增数字,主键)
buyer       (顾客姓名)
price       (价格)
discount    (折扣)
updatetime  (本条数据插入时间)


数据库里面已有很多数据,由于数据是从网络采集的,会有很多重复的数据,所以我想根据
buyer、price、discount 这三个字段来判断待插入的数据(A记录A)是否与数据库已有的数据(B记录)重复。
当 A记录 的这三个字段的内容与 B记录 同时都相同的时候,则不插入,否则插入。
 
注:id 与 updatetime 这两个字段不作为判断条件。

我的语句是

select 'buyer1','10','8','2013-09-19' from dual where not exists(select buyer,price,discount,updatetime from jiaoyi where buyer='buyer1')

但是好像不对啊,请问大伙应该怎么样写呢?  数据库是mysql,开发语言是c#。
谢谢。
mysql sql

------解决方案--------------------
select count(*) as num, id from table groupby buyer, price, discount where num > 1
------解决方案--------------------
上面版主用的是MSSQL 你的是MYSQL 所以语法上有错误.................
------解决方案--------------------
SELECT COUNT(*) AS COUNT,ID,UPDATETIME GROUP BY BUYER,PRICE,DISCOUNT HAVINT COUNT(COUNT) > 1 ORDER BY COUNT DESC