
No.3ベストアンサー
- 回答日時:
#1回答者です。
MySQLはバージョンアップが盛んに行われているので、
質問する場合は、バージョンを明記しましょう。
具体的なSQL例を回答してもらっても、バージョンの違いで実行できないということも珍しくありません。
以下のSQL例は、副問い合わせ(サブクエリ)を使用しているため、バージョン4.1以降でないと実行できないかも知れません。
●前の日付を得る
select max(hoge_date)
from hoge_table
where `day`<(select min(`day`)
from hoge_table
where hoge_date like '%2006/3/20%');
●次の日付を得る
select min(hoge_date)
from hoge_table
where `day`>(select max(`day`)
from hoge_table
where hoge_date like '%2006/3/20%');
No.2
- 回答日時:
テンポラリをつかってこんな感じでいけませんか?
ただしdayに連続性がないとだめですけど。
hogeはdate型にしない理由はなにかあるのでしょうか?
CREATE TEMPORARY TABLE `MIN-1` SELECT MIN(`day`)-1 AS `LESSMIN` FROM `hogetable` WHERE `hoge` LIKE '%2005/1/4%' ;
CREATE TEMPORARY TABLE `MAX+1` SELECT MAX(`day`)+1 AS `MOREMAX` FROM `hogetable` WHERE `hoge` LIKE '%2005/1/4%' ;
SELECT `hogetable`.* FROM `hogetable`,`MIN-1`,`MAX+1` WHERE `day` BETWEEN `LESSMIN` AND `MOREMAX` ORDER BY `day`;
No.1
- 回答日時:
>「一番最後のレコードの次」
>「一番初めの一つ前のレコード」
どういう順序での、「次」や「前」なのでしょうか?
(1)列dayでソートしているので、前後の日付という意味?
(2)列hogeでLIKE検索しているので、その検索範囲外の近い値という意味?
(3)表hogeにユニークなキーがあり、検索対象になったレコードのキー値の前後のレコードということ?
この回答への補足
すいませんでした。
意味は 1 です。
日ごとにレコードがあり、初めのレコードほど古く、最後尾がもっとも最新な情報となります。ややこしくて申し訳ないのですが、dayには日付が格納されているのではなく、auto_incrementでつけた数字が入っています。日付は hoge に 2005/3/20 な感じで入っています。つまり、 2005/1/4 にちの日に登録されたレコードをすべて取得した後、その一つ前1レコードと一つ後1レコードのみを取得したいと思っています。つまり、1/4以降と以前に登録された日を割り出すため、このようにややこしくなってしまいました。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PostgreSQL SQLで検索結果の記事を表示したい 1 2022/04/28 21:03
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「名前(first name) 1 2023/06/24 13:03
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB データグリッドビューへの表示
-
重複レコードの抽出
-
結合したテーブルに名前をつけ...
-
SQLローダーCSV取込で、囲み文...
-
文字型の順番がうまく並ばない。
-
where句中のtrim関数について
-
@以下をソートしたい
-
SQL Serverでデータの表示順を...
-
timestamp型のgroup
-
DATAPUMPとFASTUNLOADでのデー...
-
ピボットテーブルを複数項目で...
-
このようなDELETEはできますか?
-
AccessでMySQLを表示 改行が表...
-
複数のデータテーブルのデータ...
-
データベースを用いて掲示板を...
-
Ruby on RailsでDBカラムにハイ...
-
海外送金について この英文は...
-
引数によってwhere句を切り替え...
-
Mysqlで変数を使ったSELECT文の...
-
SQLで二つのデータベースをUNIO...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
count関数の値をwhere句で使用...
-
OUTER JOIN とgroup by
-
【バグ?】ORDER BY DESCでempty
-
小数点以下桁数が最大の値に小...
-
市区町村別の件数をカウントす...
-
同じテーブルでのUNION
-
結合したテーブルに名前をつけ...
-
条件について
-
重複データを除外する際に条件...
-
金額の計算方法
-
複雑なSELECT
-
複雑な並び替え処理
-
ストアドファンクションの再帰...
-
【初歩】項目別の合計件数をSQL...
-
NULLを 0 として計算する方法は?
-
以下のテーブルa,bから目的とす...
-
SQL 自己結合で件数の条件指定
-
重複レコードの抽出
-
SQL カラムの値ごとの集計
-
SQLローダーCSV取込で、囲み文...
おすすめ情報