PHP MYSQL返回结果两次(双)

时间:2013-08-23 14:05:07

标签: php mysql sql

SQL Quires显示多个值

我的意思是如果sql查询实际输出是这样的:

10456123   4561265    12   13   45  55   66
45869655   4556446    99   56   45  45   45

显示为:

10456123   4561265    12   13   45  55   66
45869655   4556446    99   56   45  45   45
10456123   4561265    12   13   45  55   66
45869655   4556446    99   56   45  45   45

显示双倍(2次)

2 个答案:

答案 0 :(得分:1)

尝试添加DISTINCT:

SELECT DISTINCT * 
  FROM 32r07,
       32r07names 
 WHERE 32r07.htno = 32r07names.htnon 
   AND 32r07.htno = '$name'

SELECT DISTINCT * 
  FROM 32r07names 
 WHERE htnon = '$name'

这不是问题解决者,但它会有所帮助。另外,请勿使用*。 我认为您需要检查表中的重复值。

答案 1 :(得分:0)

您实际上正在执行(几乎)两次相同的查询:

SELECT * FROM 32r07, 32r07names WHERE 32r07.htno = 32r07names.htnon AND 32r07.htno = '$name';

可以改写为

SELECT * FROM 32r07 INNER JOIN 32r07names ON htno = htnon WHERE 32r07.htno = '$name';

第二个查询是

SELECT * FROM 32r07names WHERE htnon = '$name';

这就像是在说:

... WHERE htnon = htno = '$name';