sql >> Base de Datos >  >> RDS >> Sqlserver

Obtenga una lista de zonas horarias admitidas en SQL Server (T-SQL)

SQL Server proporciona el sys.time_zone_info vista de configuración de todo el servidor para devolver una lista de zonas horarias admitidas.

Puede recuperarlos con un simple SELECT declaración.

Ejemplo

Ejecutar la siguiente declaración devuelve todas las zonas horarias admitidas.

SELECT * FROM sys.time_zone_info;

Esto devuelve 139 filas en mi sistema.

Puede limitar los resultados con WHERE cláusula. Si no está seguro de cómo se llama la zona horaria, siempre puede usar LIKE cláusula con algunos caracteres comodín.

SELECT * FROM sys.time_zone_info
WHERE name LIKE '%Europe%';

Resultado:

+--------------------------------+----------------------+--------------------+
| name                           | current_utc_offset   | is_currently_dst   |
|--------------------------------+----------------------+--------------------|
| W. Europe Standard Time        | +02:00               | 1                  |
| Central Europe Standard Time   | +02:00               | 1                  |
| Central European Standard Time | +02:00               | 1                  |
| E. Europe Standard Time        | +03:00               | 1                  |
+--------------------------------+----------------------+--------------------+

Si se pregunta cuál es el is_currently_dst es para, especifica si la zona horaria está observando actualmente el horario de verano (1 si lo es, 0 si no lo es).

Por lo tanto, también puede realizar una búsqueda para ver qué zonas horarias observan el horario de verano.

SELECT
  name,
  current_utc_offset
FROM sys.time_zone_info
WHERE is_currently_dst = 1;

Este es el resultado que obtuve en el momento en que ejecuté esta consulta:

+--------------------------------+----------------------+
| name                           | current_utc_offset   |
|--------------------------------+----------------------|
| Aleutian Standard Time         | -09:00               |
| Alaskan Standard Time          | -08:00               |
| Pacific Standard Time (Mexico) | -07:00               |
| Pacific Standard Time          | -07:00               |
| Mountain Standard Time         | -06:00               |
| Central Standard Time          | -05:00               |
| Easter Island Standard Time    | -05:00               |
| Eastern Standard Time          | -04:00               |
| Haiti Standard Time            | -04:00               |
| Cuba Standard Time             | -04:00               |
| US Eastern Standard Time       | -04:00               |
| Turks And Caicos Standard Time | -04:00               |
| Atlantic Standard Time         | -03:00               |
| Pacific SA Standard Time       | -03:00               |
| Newfoundland Standard Time     | -02:30               |
| Greenland Standard Time        | -02:00               |
| Saint Pierre Standard Time     | -02:00               |
| Mid-Atlantic Standard Time     | -01:00               |
| Azores Standard Time           | +00:00               |
| GMT Standard Time              | +01:00               |
| Morocco Standard Time          | +01:00               |
| W. Europe Standard Time        | +02:00               |
| Central Europe Standard Time   | +02:00               |
| Romance Standard Time          | +02:00               |
| Central European Standard Time | +02:00               |
| Jordan Standard Time           | +03:00               |
| GTB Standard Time              | +03:00               |
| Middle East Standard Time      | +03:00               |
| E. Europe Standard Time        | +03:00               |
| Syria Standard Time            | +03:00               |
| West Bank Standard Time        | +03:00               |
| FLE Standard Time              | +03:00               |
| Israel Standard Time           | +03:00               |
| Iran Standard Time             | +04:30               |
| Cen. Australia Standard Time   | +10:30               |
| AUS Eastern Standard Time      | +11:00               |
| Tasmania Standard Time         | +11:00               |
| Lord Howe Standard Time        | +11:00               |
| Norfolk Standard Time          | +12:00               |
| New Zealand Standard Time      | +13:00               |
| Kamchatka Standard Time        | +13:00               |
| Chatham Islands Standard Time  | +13:45               |
| Samoa Standard Time            | +14:00               |
+--------------------------------+----------------------+

También puede obtener la zona horaria de su propio servidor y cotejarla con la entrada correspondiente en esta lista si lo desea.