ホームページ >バックエンド開発 >PHPチュートリアル >SQL文を書いてください
テーブル会社
ID 都市トップ
1 北京、上海 北京
2 済南、石家荘済南
3 北京 北京
並べ替えルール:
1. 「北京」を検索し、`city` に「北京」が含まれるものをリストします
2; `top`には「北京のtop」があります
3. `id`は大きいものから小さいものまで並んでいます
100 ポイントが足りません、助けてください
オンラインで待つ必要はありません。ポイントを獲得したい場合は、私に連絡してください QQ515403255
都市が '%Beijing%' でトップが好きである会社から * を選択してくださいID 説明による '北京' の順序 Union select * 都市が '%Beijing%' のようで、トップが '北京' ではない会社から ID 説明による順序
select * from company where city like '%北京%' and top like '北京' order by id desc union select * from company where city like '%北京%' and top not like '北京' order by id desc
これは私が望むものではないようです
これを試してください、テストは機能します
SELECT *FROM testWHERE city LIKE '%北京%'ORDER BY (top LIKE '%北京%') DESC , id DESC
これを試してください、テストは実行できます
SQL コード
123456
SELECT * FROM test WHERE city LIKE '%北京%'ORDER BY (トップ LIKE '%北京% ') DESC , id DESC
正しい解決策