나는 SQL에서 오라클 코드를 사용하여 일부 쿼리를 변환해야합니다. 나는이 문제에 많은 어려움을 겪고있다. 누구든지 그런 쿼리 변환기를 아는 사람? 누군가 나를 위해이 코드의 일부를 번역 할 수 있습니까?. 당신의 도움에 대한오라클에 SQL 쿼리를 변환
SELECT PRUEBA = CASE (SELECT TIMEATT FROM READER WHERE PANELID = DEVID AND READERID =
MACHINE) WHEN '1' THEN 'P10' ELSE 'P20' END
+ '0001'
+ CAST(YEAR(EVENT_TIME_UTC)AS VARCHAR)
+ Right('0' + Convert(VarChar(2), Month(EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DAY(EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(HOUR,EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(MINUTE,EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(SECOND,EVENT_TIME_UTC)), 2)
+ CAST(YEAR(EVENT_TIME_UTC)AS VARCHAR)
+ Right('0' + Convert(VarChar(2), Month(EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DAY(EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(HOUR,EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(MINUTE,EVENT_TIME_UTC)), 2)
+ Right('0' + Convert(VarChar(2), DATEPART(SECOND,EVENT_TIME_UTC)), 2)
+ Right('00000000' + Convert(VarChar(8), CARDNUM), 8)
+ Right('00000000' + Convert(VarChar(8), (SELECT SSNO FROM EMP WHERE ID = EMPID)), 8),
FROM events
WHERE eventid = 0 AND eventid = 0
and machine in (11) AND DEVID IN (1,2)
and CARDNUM <> 0 AND EMPID <> 0
and EVENT_TIME_UTC between '2006-02-16' AND '2007-02-09'
많은 감사합니다, 거 야 계속 찾고 :
이
는 코드입니다.
은 참고로 오라클은 ** ** SQL''의 구현입니다. Microsoft의 'SQL Server'를 의미합니까? – JNK
기존 출력을 제공하면 SQL Server 카운터 파트의 디코딩보다 훨씬 빨리 쿼리에 도달 할 수 있습니다. – Chandu
예, SQL Server를 사용하고 있습니다 ... 출력은 다음과 같은 문자열을 가진 단일 열입니다. – NicoRiff