0

私が行う必要のあるクエリでは、ユーザーがビデオをアルバムにアップロードします。ビデオページには、アルバムのリストとその下のビデオの合計が表示されます。

現在、私がやろうとしているのはユニオンですが、これは機能していません。これは私のコードです。

$query="SELECT albname, albcover, lid, NULL as vidcount FROM albums WHERE USERID='".mysql_real_escape_string($USERID)."' and verified='1'

UNION

SELECT NULL as albname, NULL as albcover, NULL as lid, count(*) as vidcount FROM albs_vids A LEFT JOIN albums B USING(ALBID) WHERE B.USERID='".mysql_real_escape_string($UID)."'";

したがって、SQLクエリは、アルバムのデータ、つまり、テーブルからalbname、albcover、lidを見つける必要がありますalbumsalbs_vids次に、アルバムに対応するテーブル内のビデオの量を見つけます。アルバムはALBID両方の表で指定されています。

4

1 に答える 1

1

あなたが何を求めているのかを完全に理解するのは難しいですが、これはあなたのユーザーIDを持つ各アルバムのビデオの数をあなたに与えるでしょう:

$sql = "SELECT a.albname, a.albcover, a.lid, COUNT(*) AS vidcount
FROM albums AS a
LEFT JOIN albs_vids AS b ON b.albid = a.albid
WHERE b.userid='".mysql_real_escape_string($UID)."'
GROUP BY a.albname";
于 2012-04-28T02:09:50.907 に答える