Operador SQL IN

Operador Sql In



'Aquesta publicació explorarà com utilitzar l'operador IN en SQL estàndard o ANSI. L'operador IN us permet comprovar si hi ha un valor igual en un conjunt de valors determinat.

Explorem com funciona aquesta funció i com podem utilitzar-la.

Operador SQL IN

El fragment següent mostra la sintaxi de l'operador IN.







cerca_valor [ NO ] EN valor_conjunt

valor_conjunt:
{
( expressió [ , ... ] )
| ( subconsulta )
| LEVANT QUE ( expressió_matriu )
}

La funció accepta els paràmetres següents:



  1. cerca_valor: defineix una expressió que es compara amb el conjunt de valors donat.
  2. value_set: el conjunt de valors amb els quals es compara el search_value.
  3. subconsulta: descriu una subconsulta que retorna una sola columna. Si no es retorna cap valor, el conjunt de valors està buit.
  4. UNNEST(matriu): retorna una columna de valors d'un valor de matriu donat.

Aleshores, la funció retorna un valor booleà. Retorna TRUE si existeix un valor igual en el conjunt donat i FALSE si no és així.



Exemples

L'exemple següent mostra com utilitzar l'operador IN amb dades de columna. Suposem que tenim una taula amb dades de mostra com es mostra:





Podem utilitzar l'operador IN per seleccionar els registres si el país és MySQL o PostgreSQL.



SELECCIONA
*
DE
BASES DE DADES
ON
SERVER_NAME EN ( 'MySQL' , 'PostgreSQL' ) ;

La consulta anterior hauria de mostrar les files coincidents tal com es mostra:

Mitjançant l'operador IN, també podem comprovar si existeix un valor en una columna determinada. A continuació es mostra un exemple:

SELECCIONA
*
DE
BASES DE DADES D
ON
'MySQL' EN ( SERVER_NAME ) ;

En aquest cas, comprovem si el valor 'MySQL' existeix a la columna server_name. El resultat és el que es mostra:

És bo tenir en compte que si heu proporcionat valors duplicats amb l'operador IN. SQL descartarà els valors idèntics i utilitzarà un d'ells.

Conclusió

En aquesta breu publicació, vam explorar l'ús de l'operador IN a Standard/ANSI SQL. L'operador IN us permet comprovar si existeix un valor dins d'un conjunt de valors.

Gràcies per llegir!!