私のウェブサイトは一種の辞書です。キーワードが検索されたときに、「単語」と「意味」の両方の列を調べて、単語または意味のいずれかに一致するものをすべて表示したいと考えています。
select count(id) words where word like @keyword or meaning like @keyword
select * from words where word like @keyword or meaning like @keyword order by word
しかし、最初に一致する単語を表示し、次に一致する意味を表示したいと思います。順序が正しくありません
それらを分離すると:
select count(id) words where word like @keyword
select * from words where word like @keyword order by word
select count(id) words where meaning like @keyword
select * from words where meaning like @keyword order by word
このように重複があります(キーワードが単語と意味の両方に一致する場合)
それらを再度結合すると、順序が正しくなくなります
これはどのように行うことができますか?個別の一致結果の数 + 個別の一致結果自体が必要ですが、最初に一致する単語を表示し、次に一致する意味を表示します。