0

簡単な質問ですが、行がwhileループでグループ化されているかどうかを確認するにはどうすればよいですか。グループ化されているかどうかを判断できるようにしたいので、グループ化されている場合にエコーされるテキストを変更できますが、グループ化されていない行は同じままです。他にどのように説明すればよいかわからないので、これが理にかなっていることを願っています。

これは私が持っているコードです

if($r['type'] == "Wall"){
$offern = $r['aff'];
}else{
$offern = $offn['name'];
}
//  IF GROUPED $r['user_id'] <- It is grouped by `user_id` -> $offern = "Several";

print "<tr>
<td></td>
                <td><a href='lockedf.php?id=".$r['user_id']."'>{$namess['username']}</a></td>
                <td>".$offern."</td>
                <td>{$r['point']} Points</td>
                <td>".date("m/d/Y h:i:s A", $r['date_submitted'])."</td>
                <td><a href='unlock.php?id={$r['id']}' class='ask'><img src='images/unlock.png' alt='' title='' border='0' /></a></td>
                <td><a href='deny.php?id={$r['id']}' class='ask'><img src='images/trash.png' alt='' title='' border='0' /></a></td>
                </tr>";
4

1 に答える 1

1

したがって、次のようなデータがある場合:

`USER_ID`  |  `FavoriteCandy`

1        |   'Snickers'
1        |   'Butterfinger'
2        |   'Hershey'
3        |   'Twix'

そして、このようなクエリ:

SELECT USER_ID
FROM tbl
GROUP BY USER_ID;

そして、あなたの目標は、どのユーザー(この場合はユーザー1)がグループ化されているためにキャンディーが不足している可能性があるかを把握することでした...これを行うことができます:

SELECT `USER_ID`, COUNT(`FavoriteCandy`)
FROM tbl
GROUP BY USER_ID;

または、次のようにグループ化されたユーザーのみに制限します。

SELECT `USER_ID`
FROM tbl
GROUP BY USER_ID
HAVING COUNT(`FavoriteCandy`) > 1;
于 2012-12-03T20:43:36.397 に答える