0
$r=mysql_query("
(
SELECT * 
FROM commentsvv AS dt  
WHERE FIND_IN_SET(id,'$dset')>0
  AND  id2='$uid'
  AND  status_id2='0'
ORDER BY datetimep DESC LIMIT 1)

UNION

(
SELECT * 
FROM commentsvv AS dt
WHERE FIND_IN_SET(id2,'$dsetv')>0
  AND id='$uid'
  AND status_id='0'
ORDER BY datetimep DESC LIMIT 1)
");

申し訳ありませんが、そのクエリを適切にフォーマットする方法がわかりません。それについて読む必要があるので、そこにあるのは、id と id2 の全体で 1 つの結果を取得していることです。$dsetメンバーごとに 1つの結果を取得したい$dsetv場合は、最初のクエリで id でグループ化し、2 番目のグループで id2 で並べ替え、datetimep desc limit 1 で並べ替えます。うまくいきません。

4

1 に答える 1

0

あなたがする必要があるのはサブクエリです。クエリの残りの半分は必要ありません。また、1 つのレコードだけを要求している場合、どのように何かをグループ化できますか、またはなぜグループ化したいのでしょうか? w3schools.org

于 2013-04-01T05:20:34.707 に答える