![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
mysql初心者です。宜しくお願い致します。
PHP+Mysqlで以下のスクリプトを組んでいます。
変数aを一旦決めておき、カウント結果次第で変数aの値を広げるというものです。
これをSQL文一発にまとめたいのですが、可能でしょうか?
mysqlのバージョンは5.1.34です。お詳しい方、ご教授お願い致します。
$a = 10; //仮に10
$query = "SELECT COUNT(*) AS cnt FROM mydb WHERE
col_a BETWEEN ( 100 - $a ) AND ( 100 + $a ) AND
col_b BETWEEN ( 100 - $a ) AND ( 100 + $a )";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
if($row[cnt] < 10){$a = 20;} //件数が10件以下ならaの範囲を広げて結果取得
$query = "SELECT * FROM mydb WHERE
col_a BETWEEN ( 100 - $a ) AND ( 100 + $a ) AND
col_b BETWEEN ( 100 - $a ) AND ( 100 + $a )";
$result = mysql_query($query);
No.2ベストアンサー
- 回答日時:
きっちり動くかどうか怪しいですがこんな感じで変数をつかってみては?
以下と未満は違うので注意してください
SELECT *
FROM mytable
WHERE col_a
BETWEEN ( 100 - ( @a :=(
SELECT IF(COUNT( * )>=10,10,20) AS CNT
FROM mytable
WHERE col_a
BETWEEN ( 100 - ( @b :=10 ) )
AND ( 100 + @b )
AND col_b
BETWEEN ( 100 - @b )
AND ( 100 + @b )
) ) )
AND ( 100 + @a )
AND col_b
BETWEEN ( 100 - @a )
AND ( 100 + @a )
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- PHP アコーディオンPHPが上手くいかない 3 2022/07/15 16:29
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- PHP PHPでMysqlにデータがあるかどうか判別したい 1 2023/03/02 11:48
- PHP PHP ページング データベース 1 2022/06/16 10:30
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpで複数のDBを使用した場合の...
-
複数行のクエリを、まとめて実...
-
データベースの選択エラー
-
接続ができません
-
SQLのVARCHARとVARCHAR2の違い
-
副問合せにLIKE文を使う方法は...
-
INT型は金額の型に使用するべき...
-
ERROR 1054 (42S22) 原因不明です
-
RPMのmysqlとmysql-serverの違い
-
ODP.NETのバージョン確認
-
like句を使って日本語を検索す...
-
シングルクォーテーションとダ...
-
SQL Server のキャラクターセッ...
-
Usage: \\.<filename> | sourc...
-
mysqldが実行できない
-
VBAで変数内に保持された二次配...
-
MySQLからACCESSにリンクすると...
-
cseデータ閲覧時に文字化け
-
「・」中点が入った文字列を条...
-
c言語でMySQLを利用するときの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
phpで複数のDBを使用した場合の...
-
show databasesコマンドが効かない
-
MySQLのテーブルのデータ数のカ...
-
UPDATEできない
-
MySQLが動かない(テーブルレコ...
-
初心者ですがupdateがうまくい...
-
MySQLで合計と小計の計算方法を...
-
C言語で変数の内容をINSERTする...
-
phpでデーターベース編集
-
緊急です。insert文が実行されない
-
複数行のクエリを、まとめて実...
-
(phpeditor)→(phpMyadmin)
-
新規ユーザ作成・ログインでき...
-
フォームとPHPの連携
-
mysqlのデータベースの内容をph...
-
MySQLのINSERT文で変数展開がで...
-
[MySQL]全くクエリーキャッシュ...
-
検索結果IDの使いまわしについて
-
カウントして抽出するsqlをまと...
-
MYSQLで読替え(SELECT~CASE)...
おすすめ情報