mysql查询仅在行数大于零时返回

mysql查询仅在行数大于零时返回,mysql,count,return,rows,Mysql,Count,Return,Rows,如何将此查询更改为仅返回超过0行的行 我需要合并这两个查询。我需要返回第二个查询至少返回1行的行 SELECT albumData.* FROM albumData WHERE userID='$id' AND state='0' ORDER BY date DESC SELECT photos.photo FROM albums, photos WHERE albums.userID = '$id'

如何将此查询更改为仅返回超过0行的行

我需要合并这两个查询。我需要返回第二个查询至少返回1行的行

    SELECT albumData.* 
       FROM albumData 
      WHERE userID='$id' 
        AND state='0' 
   ORDER BY date DESC


  SELECT photos.photo 
    FROM albums, photos 
   WHERE albums.userID = '$id' 
     AND albums.photoID = photos.id 
     AND albums.albumID = $albumID 
ORDER BY photos.id DESC LIMIT 6;
编辑从评论中添加有用信息:


表albumData containers针对每个用户和每张照片的唯一行 他们已经设置了相册,这是我想要返回的号码 从最初的行开始。但是,我想将albumData中的id与 albumID是albums表,如果包含 albums.albumID=albumData.id不止一行,然后返回这些行


我想你可能会犯一些错误。。 如果您试图阻止空记录集,请执行以下操作:

使用像这样的东西

$getPhotosq = "
SELECT photos.photo FROM albums, photos 
WHERE albums.userID='$id' 
AND albums.photoID=photos.id 
AND albums.albumID=$albumID 
ORDER BY photos.id DESC LIMIT 6"; 

$rs = mysql_query($getPhotosq);
if($rs) {
 /// DO THE CODE
}

您的查询似乎是正确的

下面可能是一个问题

没有等于
$id
$albumID
的记录。请先手动检查此项,然后再次执行查询


祝你好运

下一次尝试。。如果我没弄错的话

SELECT photos.photo 
FROM albums
INNER JOIN photos on albums.photoID = photos.id 
INNER JOIN albumData ON albumData.id = albums.albumID
WHERE albums.userID = '$id' 
  and albums.albumID = $albumID 
  and albumData.state = '0'
ORDER BY photos.id DESC LIMIT 6;

编辑您的问题并提供表结构pls…
以仅返回超过0行的行。
我不明白,请提供更多pls类型的信息结构。。。比如id INT…如果你是指像php中的
这样的语言
。。。您可以使用
计数
计算返回的行数。它只有在有行要返回时才会返回!Table albumData containers对于每个用户,对于他们设置的每个相册,都是唯一的行,这是我想要返回最初的行数的地方。但是,我想将albumData中的id与albumID is albums表进行比较,如果albums.albumID=albumData.id的行数超过一行,则返回这些行。是否确实要调用
mysql\u查询(mysql\u查询(…)
?我实际上是在尝试执行错误操作,我需要编辑第一个查询,但是,我需要在第二个查询返回时计算行数。$rs即使在空结果集上也会计算为true,只要查询运行时没有错误,您需要
mysql\u num\u rows()
是的,使用mysql\u num\u rows可以很好地实现这一点,但是我正在尽可能多地保留查询中的行数,但我没有意识到这会如此困难,更难解释。这似乎应该有效,但它不会返回任何内容。仍然无效,你有几个列的名称错误,我将它们更改为应该的,但仍然没有返回任何内容。(我将你的答案编辑成正确的行,我不确定它是否会显示)什么不起作用。。你没有输出?还是怎样可以将php代码发布到吗?正确,没有输出。如果我只是在一段时间内尝试输出id(mysql\u fetch\u array()),则不会返回任何内容。请尝试将SQL语句中的$id和$albumId替换为有效数字,如1和1,然后重试。。
  SELECT albumData.* 
    FROM albumData, albums 
   WHERE albumData.userID='$id' 
     AND albumData.state='0' 
     AND albums.state='0' 
     AND albumData.id=albums.albumID 
GROUP BY albums.albumID 
ORDER BY albums.date DESC