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.
Table of Contents
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
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-CN | es-ES | en-US | hi-IN | ar-SA | pt-BR | bn-BD | ru-RU | ja-JP | pa-PK |
---|---|---|---|---|---|---|---|---|---|
十二月 | diciembre | December | दिसम्बर | جمادى الثانية | dezembro | ডিসেম্বর | Декабрь | 12月 | ਦਸੰਬਰ |
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