Esta consulta devolverá filas, donde b
es 5
o 7
, Y c
es 4
.
¿Qué quieres decir con "evaluación en parejas"?
Actualización:
Agregaré una fila más a la muestra:
+----------+----------+----------+
| PK | b | c |
+----------+----------+----------+
| 1 | 2 | 3 |
+----------+----------+----------+
| 2 | 5 | 4 |
+----------+----------+----------+
| 3 | 7 | 9 |
+----------+----------+----------+
| 4 | 7 | 4 |
+----------+----------+----------+
| 5 | 2 | 9 |
+----------+----------+----------+
Si desea hacer coincidir los conjuntos completos, puede usar esta sintaxis:
SELECT *
FROM table_name
WHERE (b, c) IN ((2, 3), (7, 9))
Esto significa:"devolver todas las filas donde b
es 2
y c
es 3
al mismo tiempo, O b
es 7
y с
es 9
al mismo tiempo."
En el ejemplo anterior, esta consulta devolverá filas 1
y 3
Pero si reescribe esta consulta al revés, así:
SELECT *
FROM table_name
WHERE b IN (2, 7)
AND c IN (3, 9)
, esto significará "devolver todas las filas donde b
es 2
o 7
, Y c
es 3
o 9
).
Esto devolverá las filas 1
, 3
y 5
, desde la fila 5
cumple la condición para la segunda consulta pero no para la primera.