文字型を日付型に変えるTO_DATE関数ってありますよね。
もともとのデータは数値型(NUMBER型)だったとしたら、
その数値型を日付型に変換するためには、
例)TO_DATE(TO_CHAR(20001201),'YYYY/MM/DD'))で実行すれば、
結果は、「2000/12/01」になりますよね?
しかし、ここで問題なのがもともとのデータの数値型の初期値が0で設定されていて、なおかつその行も結果として出したい場合どうしたらいいのかわかりません。
例が解りにくくてすいません!
何か解決法がありましたらぜひ教えて下さい!
No.1
- 回答日時:
日付として、0年0月0日は存在しないので、'00000000'をそのままの形で日付として管理できません。
null値で表現するなり、西暦1年1月1日 0時0分0秒の1秒前で表現するなりの置き換えを考えるしかありませんね。
日付型の概念のない処理言語などからのシステム移行で良くある話ですが、
日付として'00000000'は間違っていると考えるか、従来通りにNUMBER型や文字列型で考えるかの2択です。
(日付の演算が無ければ、NUMBER型や文字列型でも問題はないと思いますけど)
No.2ベストアンサー
- 回答日時:
こんにちわ。
> もとのデータの数値型の初期値が0で設定されていて
仮に初期値を西暦1年1月1日で表示するとして、
Select to_date(decode(to_char(項目名, 0, '00010101', 項目名), 'FM99999999'), 'YYYYMMDD')
from テーブル名
でどうでしょう?
※ 数値型を日付型に変換するためには・・・
TO_DATE で変換できるのは、CHAR, VARCHAR2, NCHAR, NVARCHAR2
データ型です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL SQLについて質問です。 SELECT TO_CHAR(TO_DATE('90-10-08.'YY- 4 2022/05/13 20:55
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- Excel(エクセル) DATE関数で指定する「日」のセルが関数の場合の対処法 5 2022/09/14 15:46
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Excel(エクセル) Excel 数行を1組とする300組ほどあるデータの項目を揃えたいです。 3 2023/01/26 19:38
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- JavaScript gasについて 1 2022/05/31 21:51
- その他(Microsoft Office) wordの差し込み印刷での日付表示 2 2023/08/15 16:51
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
ORA-01858: 数値を指定する箇所に数値以外の文字が指定されています
Java
-
Oracle 2つのDate型の値の差を「分」で取得したい
その他(データベース)
-
TO_DATE関数について
Oracle
-
-
4
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
5
updateで複数行更新したい
Oracle
-
6
Oracle11g SQLPlusログインについて
Oracle
-
7
特定条件での連番の振り方を教えて下さい
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで部分的にGROUP BYしたいとき
-
今日の日付が入った行のデータ...
-
エクセル 日付による並べ替え...
-
SQLサーバで和暦から西暦に変換...
-
WHERE句にて「30日前から今日ま...
-
Accessの数値から時間に変換す...
-
エクセルと日付の関数と並び替え
-
Excelの並び替え(先頭の文字以...
-
Excelグラフの日付軸の日付がず...
-
SQL ブレーク処理について
-
日付の切り出し方法について
-
wordの差し込み印刷での日付表示
-
指定した年月までのデータを取...
-
23時59分59秒までのデータを抽...
-
特定の日付が第何週目にあるか...
-
日付書式に変換でこまっています!
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
重複するIDのデータを1行にま...
-
関数IFで、指定日付範囲のデー...
-
ExcelのSUMPRODUCTで日付の範囲...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
今日の日付が入った行のデータ...
-
Accessの数値から時間に変換す...
-
SQLで部分的にGROUP BYしたいとき
-
SQLサーバで和暦から西暦に変換...
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
エクセル 日付による並べ替え...
-
エクセルVBA 今日の日付行...
-
oracle 文字列 01:45 を時間に...
-
23時59分59秒までのデータを抽...
-
WHERE句にて「30日前から今日ま...
-
テーブルの主キーをdate型...
-
特定の日付が第何週目にあるか...
-
SQLite3のtext→date変換について
-
SQLで今日の日付でWhereしたい
-
ExcelのSUMPRODUCTで日付の範囲...
-
日付の切り出し方法について
-
指定した年月までのデータを取...
-
4バイトの日付データを、16進数...
-
日付型なら変数の先頭になん...
-
wordの差し込み印刷での日付表示
おすすめ情報