" group by" -query的意外结果

时间:2016-03-28 15:07:55

标签: php mysql

我在做分页的东西。我有销售交易,每个交易都有一个唯一的交易ID。

$sql = "SELECT COUNT(*) from sale_history group by transaction_id";
$query = mysql_query($sql);
$row = mysql_fetch_row($query);
$rows = $row[0];
print $rows; 
exit;

我表格中的数据如下:

sale id    item         customer     transaction_id
 1          abc           aaa           1234
 2          def           aaa           1234
 3          abc           bbb           9876
 4          def           bbb           9876

现在这个计数应该给我行数2,但它给了我1。

2 个答案:

答案 0 :(得分:1)

要输出行数,您应该使用

mysql_num_rows


$sql = "SELECT COUNT(*) from sale_history group by transaction_id";
$query = mysql_query($sql);
$num_rows = mysql_num_rows($query);

答案 1 :(得分:0)

您正在寻找mysql_num_rows()

*** mysql_ *是php上的一个depreacted库。请改用PDO或mysqli_ *。