Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
テーブルに「01-JAN-99」という形式の日付列があります。sysdate を使用して現在の日付とテーブル内の日付の差を表示する必要があります。しかし、年と月で表示する必要があります。したがって、日付が 148 か月前の場合、12 年と 4 か月が表示されます。
これは私のために働く:
SELECT DATEDIFF(yy, '04/01/1999 00:00:00', GETDATE()) AS Years, DATEDIFF(m, '04/01/1999 00:00:00', GETDATE()) - (DATEDIFF(yy, '04/01/1999 00:00:00', GETDATE()) * 12) AS Months
繰り返しを避けるために、日付 ('04/01/1999') を列またはパラメーターにするのが理想的です。