Mysql
 sql >> Database >  >> RDS >> Mysql

Qual è l'equivalente SQL Server di ELT() in MySQL?

In MySQL, puoi usare ELT() funzione per restituire un elemento da una posizione specificata in un elenco. SQL Server ha una funzione simile, ma con un nome diverso.

In SQL Server, il CHOOSE() La funzione fa sostanzialmente la stessa cosa di ELT() funzione fa in MySQL. Per essere più precisi, CHOOSE() è in realtà una funzione Transact-SQL, quindi può essere usata anche nei database di Azure.

Esempio

Il CHOOSE() la funzione funziona in questo modo:

SELECT CHOOSE(3, 'Cat', 'Dog', 'Horse') AS 'Result';

Risultato:

Result
------
Horse 

Quindi sembra quasi identico alla versione MySQL (l'unica differenza è il nome della funzione).

La versione MySQL

Ecco lo stesso esempio, ad eccezione dell'utilizzo della sintassi MySQL:

SELECT ELT(3, 'Cat', 'Dog', 'Horse') AS 'Result';

Risultato:

+--------+
| Result |
+--------+
| Horse  |
+--------+

L'unica differenza è che devi cambiare ELT a CHOOSE per usarlo con SQL Server.

Per ulteriori CHOOSE() esempi vedi Come trovare una voce di elenco in una posizione specificata in SQL Server.