2017-05-26 25 views
-3

私はmysqlからoracleにクエリを移行しようとしています。 MySQLでは私は月に私を与えることがOracleの日付to_charグループと注文

MYDATE 
DEC-2016 
NOV-2016 
OCT-2016 

私のテーブルは、私はこの

を使用しようとしていますOracleで

IDATEIN 
2016-12-01 
2016-12-01 
2016-12-01 
2016-10-01 
2016-11-01 

が含まれているような結果

SELECT DATE_FORMAT(IDATEIN, '%M-%Y') as MY 
    FROM ATTENDANCE 
GROUP BY MY 
ORDER BY IDATEIN DESC 

を取得するためにクエリを使用しています

SELECT TO_CHAR(DATEIN, 'MON-YYYY') AS MY 
    FROM HRM_ATTENDANCE 
    GROUP BY TO_CHAR(DATEIN, 'MON-YYYY') 
    ORDER BY TO_CHAR(DATEIN, 'MON-YYYY') 

ただし、

APR-2016 
APR-2017 
AUG-2016 
FEB-2016 
FEB-2017 

ようabphablesへリングは、日付を切り捨てる

Mysql Result

+0

「abphables」とは何ですか? –

+0

あなたのmysqlの結果の2017エントリはどこにありますか? – Jens

+0

同じ入力レコードを持つ両方のクエリの結果を表示します – Jens

答えて

2

使用TRUNCを結果

Oracle Result

MySQLの結果

のOracleを助けてください月の開始とGROUP BY/ORDER BY日付値にわずかSELECT句の文字列にそれをひそか:あなたのデータは唯一月の最初のために、この缶のように見えることから、しかし

SELECT TO_CHAR(TRUNC(DATEIN, 'MM'), 'MON-YYYY') AS MY 
FROM  HRM_ATTENDANCE 
GROUP BY TRUNC(DATEIN, 'MM') 
ORDER BY TRUNC(DATEIN, 'MM') 

簡略化する:

SELECT TO_CHAR(DATEIN, 'MON-YYYY') AS MY 
FROM  HRM_ATTENDANCE 
GROUP BY DATEIN 
ORDER BY DATEIN 
+0

ありがとうございました。 – Mani

関連する問題