1

以下のようなデータスキーマを持つアルバムギャラリーがあります

| album_id | album_title |
| 1        |  test       |
| 2        |  test123    |
| 3        |  testing    |

| img_id   | img_albumid | img_full_path  | img_album_cover
| 1        |  1          | /blabla/1.jpg  |  0
| 2        |  1          | /blabla/2.jpg  |  1
| 3        |  1          | /blabla/3.jpg  |  0
| 4        |  2          | /blabla/4.jpg  |  0
| 5        |  2          | /blabla/5.jpg  |  1
| 6        |  3          | /blabla/6.jpg  |  0
| 7        |  3          | /blabla/7.jpg  |  0

画像をクロス結合してアルバムを表示できます。問題は、アルバムカバーのデフォルト画像を設定したいということです。カバー アルバムは、ユーザーが設定した場合はイメージ テーブルから表示されますが、カバー アルバムが設定されていない場合は、カバーとして img から任意の画像を取得します。これまでのところ、このクエリは機能しますが、カバー アルバムには機能しません

SELECT album_id, album_title, img_full_path
FROM album 
LEFT JOIN image ON album_id = img_albumid
WHERE img_albumid != 0
GROUP BY(album_id) 
limit 10

phpとmysqlクエリでそれを行う方法は? ありがとう

4

1 に答える 1