2012-01-10 7 views
0

おはよう、OracleデータをAccessデータ形式に変換する

私はODBCを介してOracle Data(表)にリンクしています。私は、このテーブルがどのように設計されているか、またはデータが格納されているかについて何の制御もしていません。しかしながら

、データの次の形式のテキスト・データ・タイプとして今後の列、例えば:20120110

私はアクセスの日付を変換するために、次のコードを使用する:

CDate(Right([Example.MY_DATE],2) & "/" & Mid([Example.MY_DATE],5,2) & "/" & Left([Example.MY_DATE],4))

この日付を01/10/2012

これを行うには正しい方法ですか?

ミックス結果が表示されています。これは、クエリの結果セットが正確でないことを意味しています。変換方法が正しいことを確認したいだけです。

例:

`

CDate関数(右([Example.MY_DATE]、2)& "/" &ミッド([Example.MY_DATE]、5,2)& "/" &を選択たformat_date

(((CDate関数(右([xample.MY_DATE]、2)& "/" &ミッド([xample.MY_DATE]、5,2)AS左([Example.MY_DATE]、4)) & "/" &左([xample.MY_DATE]、4)))>#01/09/2012#)

ORDER BY

CDate関数(右([Example.MY_DATE]、2)& "/" &ミッド([Example.MY_DATE]、5,2)& "/" &左([Example.MY_DATE ]、4)) `

ありがとうございました!

答えて

0

は、あなたの代わりに「DateSerialの」関数を使用してみました:

Date = DateSerial(Left(MyDate, 4), Mid(MyDate, 5, 2), Right(MyDate, 2)) 

日付シリアルは

あなたの英語の形式で、たとえば環境ではなく、アメリカの形式などのデフォルトの形式に日付を変換する必要があります

ので、SQLは次のようになります。

SELECT DateSerial(Left(MyDate, 4), Mid(MyDate, 5, 2), Right(MyDate, 2)) AS Format_Date 
FROM Tablename 
WHERE DateSerial(Left(MyDate, 4), Mid(MyDate, 5, 2), Right(MyDate, 2)) > #01/09/2012# 
ORDER BY DateSerial(Left(MyDate, 4), Mid(MyDate, 5, 2), Right(MyDate, 2)) 
+0

んが、私はそうではありませんん、あなたは私がこの中を縛ら方法としてさらに詳しく説明することができます 感謝を!私はこれも読んでいます。 – Asynchronous

+0

私の答えには関数の正確な構文が含まれていますが、上で書いたものと一致させようとしましたが、Accessの検索ボックスに関数名を入力すると、例が得られます) –

+0

ありがとうIこれをテストして、それがすでに持っているものとは違った仕組みになっているのを見ています。 – Asynchronous

関連する問題