- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLのレコードの並び変えについて)
MySQLのレコードの並び変えについて
このQ&Aのポイント
- MySQLのレコードの並び変えについてです。開発環境はMySQL 5.0.95とPHP Version 5.3.3です。指定したテーブルで「野菜」と検索した際の並び順について説明します。
- 検索結果の並び順を適切に表示するための方法について、参考ページを提供します。
- 初めに「title」にあったものを表示し、次に「content」にあったものを表示させる方法があります。また、1回のSQLで実現する方法についても検討しています。ご助言いただけると幸いです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
mysqlのバージョンが古いですが、最新のバージョンだと普通に1行になるみたいですけど。 union allでもしないかぎり最初のテーブルでみるので、title, contentとか関係なく一緒になります。 微妙に値がちがう(空白があるとか)そういうのじゃないんでしょうか? カラム名が問題なら as とかでrenameしてunionするとどうなるのでしょう?
お礼
ご回答いただきましてありがとうございました。 UNIONとUNION ALLの区別がよくわかっていないませんでした。 教えていただいた通りUNIONで問題ありませんでした。 下記のSQLで取得できました。 SELECT * FROM `hoge` WHERE title LIKE '%野菜%' UNION SELECT * FROM `hoge` WHERE content LIKE '%野菜%' 実際のテーブルでSQLを走らせると問題ないのですが、 PHPから取得できないのでさらに確認しています。 希望どおりの方法を教えていただきありがとうございました。