dieron una mesa foo
con una clave principal compuesta (a,b)
, ¿hay una sintaxis legal para escribir una consulta como:DONDE col1, col2 EN (...) [sub consulta SQL utilizando la clave primaria compuesta]
SELECT ... FROM foo WHERE a,b IN (SELECT ...many tuples of a/b values...);
UPDATE foo SET ... WHERE a,b IN (SELECT ...many tuples of a/b values...);
Si esto no es posible, y no se podía modificar el esquema, ¿cómo puede usted realizar el equivalente de lo anterior?
También voy a poner los términos "clave primaria compuesta", "subselección", "sub-selección" y "subconsulta" aquí para resultados de búsqueda en estos alias.
Editar: Estoy interesado en respuestas para SQL estándar, así como aquellos que trabajaría con PostgreSQL y SQLite 3.
Eso se ve bien, excepto que no funcionará en el caso de 'UPDATE' en SQLite3, que [no admite las uniones en UPDATE] (http://sqlite.org/lang_update.html) consultas. Estoy intentando, en parte, saber si el núcleo multi clave IN es legal (acabo de leer que no está en SQLite), sino también para ayudar [a responder esta pregunta] (http://stackoverflow.com/questions)./4622353/how-do-i-do-this-update-in-sqlite/4622371 # 4622371). – Phrogz
Ah, bueno para la actualización, no estoy seguro. Voy a seguir golpeando mi cabeza contra esto ... –
Esto funcionó para mí. ¡¡Muchas gracias!! –