![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんにちは、質問させてください。
今、以下の構成のテーブル(test_tbl)があるとします。
---------------------------
filed = type = size
---------------------------
name = varchar = 512
hizuke = datetime = 8
address = varchar = 512
---------------------------
今、ある期間に当てはまる人のデータを抽出するため
以下のSQL文を発行しています。
------------------------------------
select, name, address,
substring(convert(varchar, hizuke, 112), 1, 4) + '/' +
substring(convert(varchar, hizuke, 112), 5, 2) + '/' +
substring(convert(varchar, hizuke, 112), 7, 2)
from test_tbl
where
substring(convert(varchar, hizuke, 112), 1, 4) + '/' +
substring(convert(varchar, hizuke, 112), 5, 2) + '/' +
substring(convert(varchar, hizuke, 112), 7, 2)
between '1999/11/02' and '2003/02/16'
-----------------------------------------------------
と記述しています。
このSQLだと関数などたくさん使用しており
時間がかかってしょうがありません。
※特に日付関連の部分
なにかいいアドバイスがある方、宜しくお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
プログラム上から利用しているのでしょうか・・・
手で打っているのであれば、何の問題も発生しませんよね。
つまり'1999/11/01' and '2003/02/28'で。
プログラムから利用するのであれば、SQLを発行する前に
'1999/11/01','2003/02/28'を生成する処理を入れるだけでしょう。
どの言語を使っているか知りませんが。
SQLでやるのであれば、ホスト変数などを使えばできると思いますよ。
No.1
- 回答日時:
???
ただ単にhizukeと比較でいいのでは?
select name, address, hizuke
from test_tbl
where
hizuke between '1999/11/02' and '2003/02/16'
なにか問題でも・・・
この回答への補足
返信ありがとうございます。
上記でも問題はありませんが、この場合年月日の検索のみ適用できるようです。
検索対象期間を1999年11月から2003年2月にすると、
select name, address, hizuke
from test_tbl
where
hizuke between '1999/11' and '2003/02'
とすると正しいデータが返ってきません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- MySQL `picture` varchar(255) のコマンドで間違いないでしょうか? 1 2022/11/21 04:08
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- MySQL エラー 1068 (42000): 複数の主キーが定義されていますエラー 2 2022/11/17 04:36
- MySQL テーブル作成時のカラムについて 2 2022/08/27 21:48
- その他(AV機器・カメラ) パソコンで『日付』の入力 11 2022/10/20 16:21
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのAccessでDATE型のINSERT
-
SQL文について教えてください
-
質問です How is your school l...
-
IF文、条件分岐の整理方法
-
差し込み後、元データを変更し...
-
外部参照してるキーを主キーに...
-
SQLで特定の項目の重複のみを排...
-
処理件数を非表示にしたい
-
フィルターかけた後、重複を除...
-
Access:クエリーにて集計後に...
-
Exel VBA 別ブックから該当デ...
-
エクセルで最後の文字だけ置き...
-
for whichの使い方
-
エラー 1068 (42000): 複数の主...
-
NO WAR NO ABE
-
SQLを作ったのですがうまくいき...
-
テーブル列数とデータファイル...
-
access2003 クエリSQL文に...
-
Mysql UPDATE出来ません
-
INSERT文でフィールドの1つだ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのAccessでDATE型のINSERT
-
クロス集計で、列を動的に
-
●SQL Server 2000●日付だけ取得...
-
SQLサーバでの和暦(int)→西暦へ...
-
SQLで日付の指定
-
ACCESS 日付の比較
-
nvarcharとdatetimeで作成され...
-
select文で int を yyyy-mm-dd...
-
日付/時刻型のフィールドに対し...
-
SQLServerでの日付関連に関する事
-
Datetime型 条件について
-
SQLのクエリの書き方を教えて下...
-
差し込み後、元データを変更し...
-
外部参照してるキーを主キーに...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
SELECT 文 GROUP での1件目を...
-
1、Rstudioで回帰直線を求める...
-
for whichの使い方
-
カーソル0件の時にエラーを発生...
おすすめ情報