我有我的數據庫2個表(直到現在),一個用於存儲藝術家的名字和另一個存儲歌曲(名稱和歌詞)不同領域的結果,但我需要使用一個SELECT
到內搜索藝術家名稱,歌曲名稱和歌詞的一次,但我得到的部分結果和大量的1292個錯誤。搜索與LIKE
宋表(歌曲)
song_id
artist_id
song_name VARCHAR
song_lyric TEXT
藝術家表(藝術家)
artist_id
artist_name
我的第一個SQL想法是LEFT JOIN
這樣的:
SELECT s.song_name AS SONG, s.song_id AS ID FROM songs AS s
LEFT JOIN artists AS a ON s.song_id = a.artist_id
WHERE s.song_name OR s.song_lyric OR a.artist_name LIKE '%some value%'
的SELECT
給出了一個結果,如果我用一個藝術家的名字(如果我有一個獨特的名字),但如果我嘗試像「太陽」,「兒子」一些正則表達式我有一個空的結果集。
任何幫助將是惠康
'WHERE s.song_name LIKE '%某個值%' 或s.song_lyric LIKE '%某個值%' 或a.artist_name LIKE '%某個值%'' –
什麼是你期望的輸出?你爲什麼在'LEFT JOIN'中使用's.song_id = a.artist_id'? – Ponnarasu
我要像一個隱藏字段(拉撒路)的ID創建另一個搜索,並根據歌手名,歌曲名或者一些歌詞的歌曲名。 – douglascast