SQL 服务器印度时区日期
SQL server Indian Timezone Date
我正在使用 SQL 服务器 2008 R2,(位于美国位置)
我有一项 SQL 工作要向客户发送电子邮件通知。根据他们的生日,我从数据库中获取数据如下:
SELECT CustomerId,
CustomerName,
Email,
Dob,
FROM Customers
WHERE DAY(Dob) = DAY(GETDATE())
AND MONTH(Dob) = MONTH(GETDATE())
作业安排在 9:30 AM IST。
这里的问题是,由于服务器位于美国,作业 运行 上午 9:30 IST,它每天发送两次相同的电子邮件。
我该如何处理这种情况?有什么办法可以处理 TimeZone 吗?请帮助我。
你可以试试下面的
SELECT CustomerId,
CustomerName,
Email,
Dob,
FROM Customers
WHERE DAY(Dob) = DAY(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))
AND MONTH(Dob) = MONTH(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))
我正在使用 SQL 服务器 2008 R2,(位于美国位置)
我有一项 SQL 工作要向客户发送电子邮件通知。根据他们的生日,我从数据库中获取数据如下:
SELECT CustomerId,
CustomerName,
Email,
Dob,
FROM Customers
WHERE DAY(Dob) = DAY(GETDATE())
AND MONTH(Dob) = MONTH(GETDATE())
作业安排在 9:30 AM IST。
这里的问题是,由于服务器位于美国,作业 运行 上午 9:30 IST,它每天发送两次相同的电子邮件。
我该如何处理这种情况?有什么办法可以处理 TimeZone 吗?请帮助我。
你可以试试下面的
SELECT CustomerId,
CustomerName,
Email,
Dob,
FROM Customers
WHERE DAY(Dob) = DAY(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))
AND MONTH(Dob) = MONTH(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))