Nombre del mes en diferentes idiomas en SQL Server

A continuación se explica cómo mostrar el mes en diferentes idiomas mediante consultas en SQL Server, y en los diez idiomas más hablados del mundo.

Cada idioma va acompañado de un fragmento de código T-SQL que formatea una fecha para mostrar el nombre del mes en ese idioma específico.

Así que, desglosemos el código T-SQL por idioma con una breve descripción para cada uno. En un artículo anterior vimos cómo mostrar el nombre del mes usando diferentes variaciones de T-SQL, sin cambiar el idioma.

1. Mostrar el nombre del mes usando SQL Server en chino (mandarín)

El chino es el idioma oficial de China y también de Taiwán. Mostrar los nombres de los meses en chino (mandarín) dentro de SQL Server requiere comprender sus matices lingüísticos. El mandarín, siendo el idioma oficial tanto de China como de Taiwán, tiene una importancia global significativa.

En SQL Server, formatear fechas para mostrar nombres de meses en mandarín implica utilizar funciones específicas del idioma y conjuntos de caracteres, asegurando una representación precisa dentro de los sistemas de bases de datos.

DECLARE @date datetime = '2023-01-01';
SELECT FORMAT(@date, 'MMMM', 'zh-CN') AS 'zh-CN'; -- Chino (Mandarín)

Explicación de la consulta:

  • Dentro de la declaración SELECT, la función FORMAT se utiliza para formatear la fecha almacenada en la variable @date.
  • El segundo parámetro, ‘MMMM’, especifica el formato de la salida, indicando el nombre completo del mes.
  • El tercer parámetro es ‘zh-CN’, representa la cultura o idioma para el formateo, específicamente chino (mandarín) hablado en China.
  • La parte AS ‘zh-CN’ asigna el nombre del mes formateado resultante al nombre de la columna ‘zh-CN’ en la salida.

2. Español

El idioma español se habla en muchos países, especialmente en América Latina y España.

DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'es-ES') AS 'es-ES'; -- Español
Consultas para mostrar el nombre del mes en SQL Server en los 10 idiomas principales
Consultas para mostrar el nombre del mes en SQL Server en los 10 idiomas principales

3. Mostrar el nombre del mes en inglés usando T-SQL

El inglés es a menudo descrito como una lingua franca global. Esta consulta es un ejemplo de cómo mostrar el nombre del mes en inglés (americano) usando SQL Server. Al declarar una variable datetime y luego utilizar la función FORMAT con el código de idioma apropiado (‘en-US’), la consulta muestra el nombre del mes en inglés, específicamente en el formato americano.

DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'en-US') AS 'en-US'; -- Inglés americano

4. Hindi

  • Descripción: Predominantemente hablado en India.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'hi-IN') AS 'hi-IN'; -- Hindi

5. Nombre del mes en árabe usando T-SQL

  • Descripción: Idioma oficial en 26 países de Oriente Medio y África.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'ar-SA') AS 'ar-SA'; -- Árabe

6. Portugués

  • Descripción: Idioma oficial de Brasil y Portugal.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'pt-BR') AS 'pt-BR'; -- Portugués (Brasil)

7. Bengalí

  • Descripción: Idioma oficial en Bangladesh y partes de India.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'bn-BD') AS 'bn-BD'; -- Bengalí (Bangladesh)

8. Ruso

  • Descripción: Idioma oficial de Rusia.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'ru-RU') AS 'ru-RU'; -- Ruso

9. Japonés

  • Descripción: Idioma oficial de Japón.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'ja-JP') AS 'ja-JP'; -- Japonés

10. Nombre del mes en lahnda (punjabi occidental)

  • Descripción: Hablado principalmente en la región de Punjab de Pakistán.
DECLARE @date datetime = '2023-01-01';

SELECT FORMAT(@date, 'MMMM', 'pa-PK') AS 'pa-PK'; -- Punjabi (Pakistán)

11. Consulta T-SQL para obtener el nombre del mes en varios idiomas a la vez

El código a continuación, aún utiliza la función FORMAT() de SQL Server para extraer el nombre del mes de una fecha dada, aquí es 2023-12-31. Genera un conjunto de resultados que muestra el nombre del mes para esta fecha en varios idiomas prominentes, como chino (mandarín), español, inglés y varios otros, todo dentro de una sola consulta.

-- ** Código por Expert-Only.com ** --
DECLARE @date datetime = '2023-12-31';

SELECT 
    FORMAT(@date, 'MMMM', 'zh-CN') AS 'zh-CN',  -- Chino (Mandarín)
    FORMAT(@date, 'MMMM', 'es-ES') AS 'es-ES',  -- Español
    FORMAT(@date, 'MMMM', 'en-US') AS 'en-US',  -- Inglés americano
    FORMAT(@date, 'MMMM', 'hi-IN') AS 'hi-IN',  -- Hindi
    FORMAT(@date, 'MMMM', 'ar-SA') AS 'ar-SA',  -- Árabe
    FORMAT(@date, 'MMMM', 'pt-BR') AS 'pt-BR',  -- Portugués (Brasil)
    FORMAT(@date, 'MMMM', 'bn-BD') AS 'bn-BD',  -- Bengalí (Bangladesh)
    FORMAT(@date, 'MMMM', 'ru-RU') AS 'ru-RU',  -- Ruso
    FORMAT(@date, 'MMMM', 'ja-JP') AS 'ja-JP',  -- Japonés
    FORMAT(@date, 'MMMM', 'pa-PK') AS 'pa-PK';  -- Punjabi (Pakistán);

El resultado da esto en SSMS:

zh-CNes-ESen-UShi-INar-SApt-BRbn-BDru-RUja-JPpa-PK
十二月diciembreDecemberदिसम्बरجمادى الثانيةdezembroডিসেম্বরДекабрь12月ਦਸੰਬਰ
Mes traducido en los 10 idiomas principales del mundo usando FORMAT y códigos de país ISO

Nota las especificidades para el árabe, el nombre del mes «جمادى الثانية» no es diciembre en árabe; se refiere a un mes en el calendario lunar islámico. Y en el calendario gregoriano, diciembre se representa como «ديسمبر» en árabe.

Desafíos de SQL Server y la visualización multilingüe del nombre del mes

En resumen, este artículo explica la funcionalidad de SQL Server para mostrar el nombre del mes en diferentes idiomas, las 10 más hablados a nivel mundial. A través del examen de fragmentos de código T-SQL específicos del idioma, hemos destacado la capacidad de la plataforma para satisfacer necesidades lingüísticas diversas.

Este análisis enfatiza la importancia práctica del soporte de idiomas dentro de los sistemas de bases de datos, facilitando la gestión eficiente de datos en entornos multilingües.

Be the first to comment

Leave a Reply

Tu dirección de correo no será publicada.


*