2
  <?php
    session_start();
    include "config.php";
    if(isset($_POST['sub'])) {
        if(!empty($_POST["column"])) {
              $a = $_POST['column'];  // column name 

    } else {
              $a ="";
              echo "please click on the right input";
    }
    $r="select '".$a."' , count(*) as '".$a."' from emc_leadgen group by '".$a."' ";
    $t=mysql_query($r);
    if (!$t) 
    {
        $message = 'ERROR:' . mysql_error();
        return $message;
    }
    else
    {
        $i = 0;
        ?>
    <html xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns="http://www.w3.org/TR/REC-html40">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    WELCOME <?=$_SESSION['user']?></br>
    <title> emc promo 1</title>
    <meta http-equiv="Content-type" content="text/html;charset=utf-8" />
    </head>
    <body>
    <?PHP
        echo '<html><body><table><tr>';
        while ($i < mysql_num_fields($t))
        {
            $meta = mysql_fetch_field($t);
            echo '<td>' . $meta->name . '</td>';
            $i = $i + 1;
        }
        echo '</tr>';

        $i = 0;
        while ($row = mysql_fetch_row($t)) 
        {
            echo '<tr>';
            $count = count($row);
            echo $count;
            $y = 0;
            while ($y < $count)
            {
                $c_row = current($row);
                echo '<td>' . $c_row . '</td>';
                echo "</br>";
                next($row);
                $y = $y + 1;
            }
            echo '</tr>';
            $i = $i + 1;
        }
        echo '</table></body></html>';
        mysql_free_result($t);
    }

    }{echo "there is no data";}*/
    }
    ?``>
    </body>
    </html>

// 我在查询中使用 COUNT .........在我的结果中,我得到了一个数组格式,但我需要数据库中的唯一值。它将计算数据库中的值的数量,然后显示它就像我在下面写的一样,我需要这个结果 new delhi=4 ranchi=2 faridabad=3 但我得到 city = 9 //

4

1 回答 1

0

你能不能把数据库结构更好地理解数据。

如果我的想法是正确的,您想要获取数据库中的值所在的行号,这应该可以工作:

SELECT a.name, @curRow := @curRow + 1 AS row_number FROM contacts a JOIN (SELECT @curRow := 0) r

这将输出一个名为“row_number”的列,其中包含实际的行号 - (我刚刚使用了一个正在运行的本地数据库来尝试它)

编辑:

此查询将返回城市和分配给该城市的用户数:

SELECT city.name, COUNT(*) AS user_count FROM users INNER JOIN city ON users.city = city.id GROUP BY city

我做了如下测试:

$conn = mysqli_connect('localhost', 'root', 'root', 'test');
$query = mysqli_query($conn, "SELECT city.name, COUNT(*) AS user_count FROM users INNER JOIN city ON users.city = city.id GROUP BY city");
print '<ul>';
while($row = mysqli_fetch_array($query)):
    print '<li>'.$row['name'].' - Users = '.$row['user_count'].'</li>';
endwhile;
print '</ul>';

这将输出以下内容:

  • 伦敦 - 用户 = 1
  • 南安普顿 - 用户 = 3
  • 曼彻斯特 - 用户 = 2
于 2013-06-05T15:18:06.810 回答