0

我已经有这个问题很长一段时间了!我在数据库中有“Ref”,显示哪些用户被推荐,“varvade_antal”显示我招募了多少。我想找出所有在给定日期招募超过 0 的用户,只要我的代码是这样的:

<?php

    $sql = "SELECT * FROM users WHERE date >= '2013-03-01' AND date < '2013-04-29' + INTERVAL 1 DAY";
    $result = mysql_query($sql) or die(mysql_error());

    while($row = mysql_fetch_array($result)){


    if($row['ref'] == '0') {

    } else {

    $sd = "SELECT * FROM users WHERE id = '{$row['ref']}'";
    $df = mysql_query($sd) or die(mysql_error());

    while($dfs = mysql_fetch_array($df)){


        echo "{$dfs['firstname']}: {$dfs['varvade_antal']} st<br>"; 

   }}}
?>

现在它会显示我招募了多少个实例,但它显示了它的副本,如下所示:

约翰招聘6人 约翰招聘6人 约翰招聘6人 约翰招聘6人 约翰招聘6人 约翰招聘6人

所以,当你招募了 6 个人时,它也会打印 6 次!但事实并非如此。帮我?

4

1 回答 1

0

将此查询与DISTINCT

$sql = "SELECT DISTINCT * FROM users WHERE date >= '2013-03-01' AND date < '2013-04-29' + INTERVAL 1 DAY";
于 2013-04-01T11:28:43.127 回答