- 締切済み
PL/pgSQLにて日付変換ファンクションプロシージャー作成
Hardkingの回答
- Hardking
- ベストアンサー率45% (73/160)
javaでセットされた秒数というのが意味不明ですが ファンクションプロシージャーのテキスト型入力パラメータ をデータ型がtimestampの項目に反映更新させる処理と 認識しました。 通常、DBテーブルのtimestamp型は入力パラメータとは関係なく now関数で最新に更新するのですが今回の場合は timestamp関数で日時更新します。 CREATE FUNCTION updatetime(char) RETURNS INTEGER AS ' DECLARE wSec VARCHAR(2); --秒数 wdate VARCHAR; wtime VARCHAR; utime VARCHAR; BEGIN -- 入力パラメータ(秒数)を取得 wSec := $1; -- 現在日付を取得 wdate := CURRENT_DATE; -- YYYY-MM-DD形式 -- 現在時間を取得 wtime := CURRENT_TIME; -- HH:MM:SS-SS形式 -- 現在時分と入力パラメータ(秒数)を文字連結する。 utime := SUBSTR(wtime,1,6) || wSec; UPDATE WK_TABLE SET AAA = timestamp(date wdate, time utime); END; ' LANGUAGE 'plpgsql';
関連するQ&A
- 日付のフォーマット変換について
はじめまして。 日付フォーマット変換について質問です。 「Tue Sep 16 04:06:38 JST 2003」 上記のようなStringの値を yyyy/mm/dd hh:mm:ssのように 変換したいのですが、どのような方法を とれば良いのかわからず困っております。 よろしくお願い致します。
- ベストアンサー
- Java
- Excel VBA で日付を4ケタの数値に変換させるには?
ある日付データを 『月』と『日付』のみの4ケタの"文字列"にさせて表示処理させたいのですが、困っております。 現在、VBAを使用しないで処理させると…こんな感じで困っています。 1.日付を yyyy/mm/dd 表示 2.編集~ 『/』のみを全て『0』に変換 3.RIGHT関数で4ケタ(または5ケタ)抜き取る *データ* 日付 yyyy/mm/dd 変換 RIGHT(4ケタ) 1月5日 2005/1/5 20050105 0105 1月10日 2005/1/10 200501010 0110 ・ ・ ・ ・ ▲不具合状況 1."1月10日" のように日付が2ケタになる日は "1010" のように表示がずれる。RIGHT(○,5) で対処する方法もあるが…効率があまり良くない。 2."yyyy/mm/dd" のデータを直で "RIGHT( )" で処理させると思ったとおりの値が戻ってこない。 yyyy/mm/dd RIGHT() 2005/1/5 → 8537 …変な値が戻ってくる? VBAで一気にやる方法ありますでしょうか? お知恵を拝借ください!
- ベストアンサー
- Visual Basic
- 14桁の日付(YYYYMMDDHHMMSS)を日付(YYYY/MM/DD)に変換できますか?
データとして14桁の値で日付が登録されています。 この14桁の値(YYYYMMDDHHMMSS)を日付(YYYY/MM/DD)に変換できますか? やりたい事はこの14桁の値から現在の日付から過去1年以内のデータを取得したいと思っていますが・・・ どのようにしたらいいのでしょうか? 申し訳ありません、アドバイスいただけませんでしょうか? 宜しくお願いします。
- ベストアンサー
- Oracle
- 日付を米国式から日本式に変換出来ますか?
日付データが、12-05-2007 と年度が最後にくるアメリカ形式で保存されている場合これを簡単に 2007-12-05 と変換する方法はありますか? mm-dd-yyyy → yyyy-mm-dd 日付は日本、アメリカ、ヨーロッパなどでいろんな表示形式があるようです。 エクセルでもセルの設定で変換するようですね。 もしご存知の方がいましたら教えてください。
- 締切済み
- PHP
- クリスタルレポートの式フィールドで日付変換。
クリスタルレポート8の式フィールドで日付を表示させようと思っています。 標準では『YYYY/MM/DD』形式なのですがこれを『YYYY-MM-DD』で表示させたいのですがうまくいきません。 式フィールドには if A ="1" then formula = CurrentDate と記述しています。 Aの値が"1"ならば日付を表示です。 説明が下手で分かりづらいかもしれませんが、 補足しますのでヨロシクお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- C#による日付のフォーマット変換について
初めまして。 大学にてC#を勉強中の身なのですが、文字列の日付フォーマット 【YYYY/MM/DD → DD-MMM-YY】 への変換方法が分からず困っています。 よろしければどなたかご教授して頂けないでしょうか? ※このような形に変換を希望しています string型 【2000/01/01】 → string型 【01-Jan-00】
- ベストアンサー
- その他(プログラミング・開発)
- Excelの日付の表示形式の変換方法について
次のExcelの日付の表示形式の変換方法について、お分かりになる方がいれば是非教えてください。 通常の表示形式(「yyyy/mm/dd」など)を、「yyyy-mm-ddT00:00:00Z」に変換するにはどのような方法があるでしょうか? ネットで検索しても分からず、もしご教授頂ければ幸いです。 どうぞ宜しくお願いいたします。
- ベストアンサー
- その他(ビジネス・キャリア)
- ALTER SESSIONについて
オラクルのDBに対してあるSQLスクリプトを実行しなければならないのですが、その冒頭に、 alter session set nls_date_format = 'yyyy/mm/dd'; とあり、このコマンドの意味を教えてもらいたいのです。ちなみにスクリプトは、あるテーブルの一行だけを変更するUPDATE文です。末尾にはCOMMIT; があります。 alter session.... は、何らかの日付データを2005/12/05のような形に変更することを意味しているようですが、<何>を設定しているのかが分かりません。 また、このnls_date_formatの値は、DBのどこを検索すれば分かるのでしょうか。スクリプトを流す前の値が'yyyy/mm/dd'ではない場合、スクリプトを流すことで、DBの設定が変わってしまうのでしょうか。 DB初心者です。まとまりのない文章ですみませんがよろしくお願いします。
- ベストアンサー
- Oracle
補足
Hardkingさん、早々レスありがとうございます。 > javaでセットされた秒数というのが意味不明ですが 説明不十分で申し訳ないです。 私の設計ではないですが、当社DBテーブルの全ての日付の型は、date型では無くint型です。 1970/01/01 00:00:00 からの 経過秒数がセットされています。 関数を介してその秒数を、yyyy/mm/dd 型へ変換した値を、SQL抽出したデータ に付帯させたいのです。