Azure SQL Database ではデータベースのタイムゾーン変更はサポートされていません。
クエリでの変換が許容できない場合は、Azure SQL Managed Instance を利用してください。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
いつもお世話になっております。
現在AzureDatabaseを利用して、SQLデータベースを作成しております。
作成したSQLデータベースから現在時刻を取得する際に、世界標準時間になっております。
SQLデータベースを日本時間に変更することは可能でしょうか。
クエリ等の制御ではなく、データベースの時間を日本時間で取得したいと思っております。
お手数おかけしますがご確認いただけますと幸いです。
実行したクエリは以下になります。
SELECT GETDATE();
Azure SQL Database ではデータベースのタイムゾーン変更はサポートされていません。
クエリでの変換が許容できない場合は、Azure SQL Managed Instance を利用してください。
Hello Yamauchi,Daisuke/山内大介Azure SQL Database では、常に UTC に設定されている既定のタイム ゾーンの変更はサポートされていません。ただし、AT TIME ZONE機能を使用して、時刻を希望のタイムゾーンに変換できます ****** 。
inputdate* をターゲット タイム ゾーンの対応する datetimeoffset 値に変換します。offset 情報なしで inputdate が指定されている場合、この関数は、inputdate がターゲット タイム ゾーンにあると仮定して、タイム ゾーンのオフセットを適用 * します。*inputdate が datetimeoffset 値 * として指定されている場合AT TIME ZONE
、then 句はタイム ゾーン変換ルールを使用してターゲット タイム ゾーンに変換します。
参照: https://learn.microsoft.com/en-us/sql/t-sql/queries/at-time-zone-transact-sql?view=sql-server-ver17
UTCです。
SELECT GETDATE() AT TIME ZONE 'UTC'
ローカルタイムゾーン:
SELECT GETDATE() AT TIME ZONE 'UTC' AT TIME ZONE 'Japan Standard Time' AS LocalTime;
また、ユーザー定義関数 (UDF) を作成して、UTC を現地時間に変換することもできます。
これにより、データベース内の複数の場所で変換を簡単に使用できるようになります。
CREATE FUNCTION dbo.ConvertToLocalTimeEightHour (@utcTime DATETIME)
RETURNS DATETIME
AS
BEGIN
RETURN DATEADD(HOUR, 9, @utcTime); -- Adjust 9 hours for UTC+9
END;
GO
-- Usage
SELECT dbo.ConvertToLocalTimeNineHour (GETDATE()) AS LocalTime;
これがあなたのケースに役立つことを願っています。
さらに懸念がある場合はお知らせください。喜んでお手伝いさせていただきます。