如何列出查询行或使用单个查询显示“无记录”

时间:2010-04-07 07:28:59

标签: php mysql

如果没有使用单个查询返回行,如何列出查询记录并显示“无记录”?

目前我正在使用COUNT(*)查询或使用mysql_num_rows()函数;然后在不同的结果集中的另一个查询列出数据。你能告诉我是否可以用一个查询来完成相同的工作吗?

3 个答案:

答案 0 :(得分:3)

重要提示:我认为OP使用PHP作为他提到的mysql_num_rows。我希望他能告诉我我是不是错了。


您在PHP中的工作是检查结果是否为空集。我不明白为什么你要做另一个查询。也许你必须澄清你的问题。

这是一个更完整的例子:

$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);

$result = mysql_query("SELECT * FROM table1", $link);

// If if result set contains rows
if(0 == mysql_num_rows($result)) {
    echo 'no records';
}
else { // Loop over the result set
    while(row = mysql_fetch_array($result)) {
       // do whatever you want with the data here
    }
}

参考:mysql_num_rowsmysql_fetch_array


即使您不使用PHP,该方法在其他语言中也是相同的,并且应该有类似的功能。

答案 1 :(得分:0)

为什么在mysql_num_rows之后需要另一个查询?
为什么不运行查询,然后使用mysql_num_rows检查结果?

答案 2 :(得分:0)

尝试以下内容

   if (mysql_num_rows ==  '0')
       'No Records'
    else
       //YOUE CODE HERE