Ecco come visualizzare il nome del mese in SQL Server in diverse lingue utilizzando le query di SQL Server, nelle dieci lingue più parlate al mondo.
Ogni lingua è accompagnata da uno snippet di codice T-SQL che formatta una data per visualizzare il nome del mese in quella specifica lingua.
Quindi, analizziamo il codice T-SQL per lingua con una breve descrizione per ciascuna. In un articolo precedente abbiamo visto come visualizzare il nome del mese utilizzando diverse varianti di T-SQL, senza cambiare la lingua.
1. Visualizza il nome del mese con SQL Server in cinese (mandarino)
Il cinese è la lingua ufficiale della Cina e anche di Taiwan. Visualizzare i nomi dei mesi in cinese (mandarino) all’interno di SQL Server richiede una comprensione delle sue sfumature linguistiche. Il mandarino, lingua ufficiale sia della Cina che di Taiwan, ha un’importanza globale significativa.
In SQL Server, formattare le date per visualizzare i nomi dei mesi in mandarino comporta l’utilizzo di funzioni e set di caratteri specifici della lingua, assicurando una rappresentazione accurata all’interno dei sistemi di database.
DECLARE @date datetime = '2023-01-01'; SELECT FORMAT(@date, 'MMMM', 'zh-CN') AS 'zh-CN'; -- Chinese (Mandarin)
Spiegazione della query:
- All’interno dell’istruzione SELECT, la funzione FORMAT viene utilizzata per formattare la data memorizzata nella variabile @date.
- Il secondo parametro, ‘MMMM’, specifica il formato dell’output, indicando il nome completo del mese.
- Il terzo parametro, ‘zh-CN’, rappresenta la cultura o lingua per la formattazione, specificamente il cinese (mandarino) parlato in Cina.
- La parte AS ‘zh-CN’ assegna il nome del mese formattato al nome della colonna ‘zh-CN’ nell’output.
2. Spagnolo
La lingua spagnola è parlata in molti paesi, soprattutto in America Latina e in Spagna.
DECLARE @date datetime = '2023-01-01'; SELECT FORMAT(@date, 'MMMM', 'es-ES') AS 'es-ES'; -- Spanish
3. Visualizza il nome del mese in inglese utilizzando T-SQL
L’inglese è spesso descritto come una lingua franca globale. Questa query è un esempio di come visualizzare il nome del mese in inglese (americano) utilizzando SQL Server. Dichiarando una variabile datetime e poi utilizzando la funzione FORMAT con il codice lingua appropriato (‘en-US’), la query restituisce il nome del mese in inglese, specificamente nel formato americano.
DECLARE @date datetime = '2023-01-01'; SELECT FORMAT(@date, 'MMMM', 'en-US') AS 'en-US'; -- English American
4. Hindi
- Descrizione: Parlato prevalentemente in India.
DECLARE @date datetime = '2023-01-01'; SELECT FORMAT(@date, 'MMMM', 'hi-IN') AS 'hi-IN'; -- Hindi
5. Query T-SQL per ottenere il nome del mese in più lingue contemporaneamente
Il codice che segue utilizza ancora la funzione FORMAT() di SQL Server per estrarre il nome del mese da una data determinata, che qui è 2023-12-31.
Viene generato un set di risultati che visualizza il nome del mese per questa data in più lingue principali, come il cinese (mandarino), lo spagnolo, l’inglese e molte altre, il tutto con un’unica query.
-- ** Code by Expert-Only.com ** -- DECLARE @date datetime = '2023-12-31'; SELECT FORMAT(@date, 'MMMM', 'zh-CN') AS 'zh-CN', -- Chinese (Mandarin) FORMAT(@date, 'MMMM', 'es-ES') AS 'es-ES', -- Spanish FORMAT(@date, 'MMMM', 'en-US') AS 'en-US', -- English American FORMAT(@date, 'MMMM', 'hi-IN') AS 'hi-IN', -- Hindi FORMAT(@date, 'MMMM', 'ar-SA') AS 'ar-SA', -- Arabic FORMAT(@date, 'MMMM', 'pt-BR') AS 'pt-BR', -- Portuguese (Brazil) FORMAT(@date, 'MMMM', 'bn-BD') AS 'bn-BD', -- Bengali (Bangladesh) FORMAT(@date, 'MMMM', 'ru-RU') AS 'ru-RU', -- Russian FORMAT(@date, 'MMMM', 'ja-JP') AS 'ja-JP', -- Japanese FORMAT(@date, 'MMMM', 'pa-PK') AS 'pa-PK'; -- Punjabi (Pakistan);
Il risultato dà questo risultato in 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月 | ਦਸੰਬਰ |
Si noti la specificità dell’arabo: il nome del mese “جمادى الثانية” non è dicembre in arabo, ma si riferisce a un mese del calendario lunare islamico. Nel calendario gregoriano, dicembre è rappresentato come “ديسمبر” in arabo.
SQL Server e le sfide della visualizzazione multilingue dei mesi
In sintesi, abbiamo visto come visualizzare e tradurre il nome del mese in diverse lingue utilizzando SQL Server, le dieci lingue più parlate a livello globale.
Grazie a questi esempi specifici di codice T-SQL, diventa più facile soddisfare le esigenze linguistiche di un determinato progetto di database.
Questa analisi sottolinea l’importanza pratica del supporto linguistico nei sistemi di database, che facilita una gestione efficiente dei dati in ambienti multilingue.
Commenta per primo