php数据查询问题

来源:百度知道 编辑:UC知道 时间:2024/07/01 15:23:59
$res=mysql_query("a.tid,b.tid from a INNER JOIN b on (a.tid != b.tid) order by lastpost desc limit $offset,$pagesize" ,$db);

有两个表a,b,我想查询a表内的数据。条件是A表内的数据在B表内不存在。存在的不显示

例如a表内的4条数据字段tid为:1,2,3,4
b表内的2条数据字段tid为:1,2
我想显示A表内tid字段为3,4的2条数据

最简单的方法是使用IN、NOT IN来查询存在、不存在,很好理解,下面是查询不存在的例子:

select * from a where tid not in (select tid from b)

但是不知道你的mysql是否支持这样的子查询,如果不支持,就用你的连接,例子如下:

select a.*,b.tid from a left join b on a.tid=b.tid where b.tid is null

注意,要使用左连接(LEFT JOIN),条件是B.TID为空。