MySQLで少し苦労しています。自分のニーズに合った機能を見つけたのGROUP_CONCAT
ですが、使い方がわかりません。私がやりたいのは、いくつかの列と連結列で検索することです。そのため、列のいずれかが私の検索語 (%a%
この例では) と等しい場合、それが返されます。連結されたジャンル文字列を返す方法を考え出しましたが、それを検索する方法がわかりません。
SELECT albumArtworkURL, albumName, albumID,
b.artistID AS ArtistID, b.artistName AS ArtistName,
GROUP_CONCAT(DISTINCT c.songGenre separator ',') AS genres
FROM album
LEFT JOIN artist b ON album.albumArtist = b.artistID
LEFT JOIN song c ON albumID = c.songOnAlbum
WHERE albumName LIKE '%a%' OR albumYear LIKE '%a%'
GROUP BY albumArtworkURL, albumName, albumID, ArtistID, ArtistName
ORDER BY albumYear ASC, albumName ASC
助けていただければ幸いです。ありがとう :-)