• ベストアンサー

SQLでDATE型のデータを参照するのは?

SQLであるテーブルから日付型のデータを秒単位まで参照したのですが... そうですね、例えば"TABLE01"というテーブルの"Field01"っていう項目から 2000年9月7日の11:45のデータを抽出したい場合は、どような SELECT文を発行すればよろしいのでしょうか? ちなみに自分がやっているのはORACLE7です。

  • yo-he
  • お礼率35% (34/97)

質問者が選んだベストアンサー

  • ベストアンサー
  • tshimada
  • ベストアンサー率33% (4/12)
回答No.1

何に取り出すのかがないので良く分からないのですが、 SQL WorkSheetなどから参照するには単に SELECT Field01 FROM TABLE01 で、いいと思うのですが、ただし、この場合の日付の書式は「Sep 9 2000 11:45」といった感じだと思います。 これを「2000年9月7日 11:45」と表示するには、 SELECT TO_CHAR(Field1,'yyyy年mm月dd日 hh:nn) FROM TABLE01 だったと思います。 ただし、日付書式指定(特に分あたり)が違っているかもしれません。 また、プログラム中で発行する場合は、何を使って接続するかにもよりますが、たいていはDateField型がありますのでそのままで大丈夫だと思います。

その他の回答 (1)

noname#271
noname#271
回答No.2

環境をしっかり書いてください!! 出ないと答えられないというかmanualをしっかり読めば わかることだし... #UNIX、Win NT、Win9xとそれぞれで環境が #異なるので答えようにもこたえられない UNIXなら、一応答えられますが... 社外秘ってわけでもないけどmanualをよく読めば書いてあ ることだし とにかくSQLリファレンス等をよく読んでください tshimadaさん TO_CHAR(Field1,'yyyy年mm月dd日 hh:nn) は TO_CHAR(Field1,'yyyy年mm月dd日 HH24:MI:SS') #UNIXの場合、だけどNT等でも同じでしょう #UNIXでは、後環境変数の設定してました。 ですよ! これがわかれば登録するときはなにするか検討つきます ね! 登録するときも同じように登録しないと時分秒は0で登録 されます

関連するQ&A

  • Oracle10gのsql分についての質問です。

    Oracle10gのsql分についての質問です。 日付型のフィールドに[2006/07/01 01:02:03]と、 日付と時刻のデータが入っています。 SELECT文で日付が[2006/07/01]のみのデータを 抽出したいのですが、LEFT(フィールド名,10)='2006/07/01'と するとエラーになってしまいます。 どうすれば良いのでしょうか? 宜しくお願い致します。

  • SQL ?で終わる

    アクセスのSQL文で、テーブルのフィールドの値が、最後が?で終わるものを抽出したいのですが SELECT テーブル.フィールド FROM テーブル WHERE (((テーブル.フィールド) Like "[*?]")); これだと1件も抽出されません。 Like "[*?]"が間違ってると思うのですが、どうすればいいでしょうか?

  • ACCESS VBA レコードセットの参照方法について

    ACCESS2000でシステムを作っています。 ADOを使って、SELECT句に"*" を使用した内部結合でデータを 抽出したときの結果の参照方法がわかりません。 SQL="SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id" rsはレコードセット,ACはアクティブコネクションとして rs.Open SQL, AC, adOpenKeyset, adLockOptimistic にて結果を取得し、変数aにtable1のフィールド名の値を代入 しようとしています。 a = rs!table1.フィールド名 では「コンパイルエラー メソッドまたはデータメンバが 見つかりません」となり、値の参照ができません。 "*" でなく、フィールド名を明示して それぞれのフィールドに "as 別名"をつければ 参照できますが、フィールドが多いので "*"を使用したいのです。 大変初歩的な質問かと思いますが、どうかよろしくお願いします。m(_ _)m

  • Select Distinctについて

    SQL文の質問です。フィールドがTable1に100つあるとします。 select distinct XYZ From Table1という文があるとします。 これだとXYZのフィールドしか参照していないことになると思います。 そうではなくて、他の99フィールドの値も参照(データにアクセスしたい)したいと思っています。 select distinct XYZ, * From Table1とSelect * from Table1みたいなことをやりましたがエラーが発生しました。他の99フィールドを参照する方法はあるでしょうか?

  • BLOB型項目をSQLの検索条件に指定して検索したいのですが。

    BLOB型の項目を持つTableに対して、SQLのSELECT文でBLOB型項目がNull(未設定)のレコードを抽出したいと思っています。 どのようなSELECT文を組めば良いのでしょうか? 方法がわからず困っています。 御教授下さい。 DBはOracle8.1.6、 OSはWindowsサーバ2003です。よろしくお願いします。

  • sqlについて

    SQLについて質問です。 VBからMDBにSQLでデータの参照をしたいのですが ("select * from abc where No = " & No & " ;") テーブル内の数ある項目の中で一つだけまたは複数除いて参照する場合のSQL文を教えてください。 項目が60個ほどありますので一つ一つ指定していくとすごく長いSQLになってしまいそうですのでお知恵をお貸しください><

  • Oracle10gのsql分についての質問です。(WHERE句)

    Oracle10gのsql分についての質問です。(WHERE句) 先ほどの続きになります。申し訳ございません。 日付型のフィールドに[2006/07/01 01:02:03]と、 日付と時刻のデータが入っています。 SELECT文で日付が[2006/07/01]のみのデータを 抽出する場合、TO_CHAR(フィールド名,'YYYY/MM/DD')と 教えていただき成功いたしました。 ところが、WHERE句にこれと同じ文を書くと、 「リテラルが書式文字列と一致しません」とエラーに なります。 どうすれば良いのでしょうか? 宜しくお願い致します。

  • DATE型のフィールドに現在日付(秒単位まで)を挿入するには???

    前の質問に似ているかもしれませんが、 SQLにはSYSDATEというコマンドがあり、それを使用することに よって現在日付が得られるようですね。 それを使い、あるフィールドに秒単位までの現在日付を挿入(INSERT)したいのですが、 どのようにSQL文を組めばよろしいのでしょうか? 本当ならマニュアルを参照して自分で解決したいとこですが、 マニュアルが行方不明になっていて困っております。 環境はORACLE8(UNIX版)です。宜しくお願いします。

  • SQL:全テーブルの現在のデータ数を知りたい。

    環境 DBサーバ : Linux + Oracle9i  クライアント : WindowsXP + Oracle10g の SQLPlus(w) 当方SQL初心者です。以下のSelectを行うSQL文がわかりません。(色々悪戦苦闘しましたが) どなたかご教授下さい。 条件指定する TABLESPACE_NAME に属する、全テーブルの現在のデータ数を、 各テーブルに comment on したコメントと一緒に表示するSQLを教えて下さい。 Select 結果のイメージは以下の感じです。 TABLESPACE_NAME TABLE_NAME Count(*)    Comments ------------------ -------------- ----------- -------------------- 条件としては、  (1) where TABLESPACE_NAME like 'xxxx%' です。 そして TABLESPACE_NAME が異なれば、同じ TABLE_NAME のテーブルがありますが (1)の条件に合致する全てのテーブルを Select したいということです。 すみませんが、お分かりの方、宜しくお願い致します。

  • ASP + SQLにて

    お世話になっております。 このたびASPを使用し、SQL Serverへデータをいれ管理プログラムを作成しているのですが、一部データの取り出しがわからないのでご質問させていただきます。 SQL文を発行する際に、 strSQL = "select * from table1 left join table2 on table1.社員ID = table2.ID order by table1.ID desc" としております。 構造として table1にはID,日付,内容,社員IDがありまして table2にはID,社員名があります。 上記のSQL文を実行し、 <% response.write objRS("社員名") %> として社員名を出力しているのですが、 そのときtable1のIDを出力しようとして <% response.write objRS("ID") %> としたらtable2のIDが出力されてしまいました。 table1のIDを出力する方法はないのでしょうか? よろしくお願いいたします。