![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
order by での変数使用について。
PHPのsql文でDBからデータを抽出する際にorder byで特定のデータに対して昇順、降順でデータを抽出したいのですが、ここで変数を使うとorder byが上手く機能しません。
変数でなく、直接カラム名を記入すれば動くのですが・・・。
一つ疑問に思ったことはorder byで変数が使えるかというところです。
where等の条件検索では問題なく使えるので使えないということはないのかなぁと思って
試行錯誤していましたが、どうにもこうにも上手くいきません。
また変数にした理由ですが、今回情報を検索する機能を作成しています。
データの数が多いため、次のページなど何ページかに分けて表示しようと思っています。
そのため特定の値(検索条件)をセッションに保存し、次のページなどに移動しても値を保持して
同じ条件で続きからデータを抽出したいのです。
sql文は
$sql = 'SELECT * FROM `apartment` left join `member` on a_member = m_id left join `district` on a_district = d_id left join `room` on a_room = r_id WHERE `a_flg` = "0" AND `a_district` = "'.$_SESSION["district"].'" order by "'.$_SESSION["condition"].'"';
このようになっています。
セッションに値は入っていて、出力するとちゃんとカラム名(検索条件)が表示されます。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
$sqlは単なる文字列として結合された値が設定されるわけですからwhere句だろうがorderby句であろうが関係なく変数は使えると思います。
実際にsqlが実行される直前で$sqlをprint等で出力して、本当に期待しているsql文が設定されているか確認してみてください。
今までsql文の中身を出力するということは思いつきませんでした。
出力してから内容を確認したところ「"」で括られていたので、「"」を「`」に変えたところ
期待していた検索結果が表示されました。
ありがとうございます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- PostgreSQL SQLで検索結果の記事を表示したい 1 2022/04/28 21:03
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NET エラーになる箇...
-
配列をループさせてUPDATE
-
<VB.NET>INSERT文でDBにデータ...
-
JAVA SQLServerException 列名 ...
-
php MySQL で、更新ボタンを押...
-
ResultSetインターフェイスでの...
-
insert1つの処理でもトランザ...
-
OR検索を実装したい
-
C#でDBの特定列をUpdate
-
ODBC接続でデータ件数を求...
-
PHP&MySQLでの文字列+数列の一...
-
Q&Aサイトを作成していてURLの...
-
MySQLでデータベースにデータin...
-
pg_queryの結果を2回とりだす...
-
VBAをつかってクエリの情報を抽...
-
検索結果($_POST)が2ページ目...
-
実行時エラー3131 FROM 句の構...
-
テーブルに入っているデータと...
-
日またぎの計算
-
DB(MySQL)から複数行のデータを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JAVA SQLServerException 列名 ...
-
<VB.NET>INSERT文でDBにデータ...
-
Pro*Cの構文エラー
-
Q&Aサイトを作成していてURLの...
-
ResultSetインターフェイスでの...
-
VBA ACCESS SQL...
-
データベースに存在するデータ...
-
VB.NET エラーになる箇...
-
insert1つの処理でもトランザ...
-
MySQLのINSERT時にたまに重複に...
-
INSERT,DELETEを同時に
-
like検索の複数キーワードで、...
-
PHP&MySQLでの文字列+数列の一...
-
mysqliを使ってデータベースを...
-
PHP初心者です。syntax error, ...
-
PHP+SQLite でSELECT文のWHERE...
-
php MySQL で、更新ボタンを押...
-
SQLインジェクション対策
-
phpでforeach ($stmt as $row)...
-
OR検索を実装したい
おすすめ情報