Un es solo para crear registros completamente nuevos, no para completar datos en los existentes. Lo que necesita es un UPDATE
statement, que actualiza un registro existente:
UPDATE bike SET full_day = 10 WHERE bike_type = 'mens_hybrid';
(Nota: la siguiente es una versión anterior de esta respuesta, desde antes de que fuera claro para mí lo que el cartel original estaba tratando de hacer Lo dejo aquí porque muchas personas que originalmente respondieron esta pregunta no parecían darse cuenta del problema al escribir INSERT ... VALUES (...) WHERE
, lo que me hace pensar que esta explicación podría ser útil para algunas personas que se encuentran con esta pregunta.)
Esa declaración ent no tiene sentido. Un INSERT
no puede tomar una cláusula WHERE
, porque WHERE
se refiere a registros existentes, y INSERT
crea nuevos.
(Para evitar la confusión potencial: existe una cosa tal como INSERT INTO ... SELECT ...
, donde los registros para insertar están determinados por una consulta SELECT
en lugar de por una expresión VALUES
, y en ese caso la consulta SELECT
puede, por supuesto, tener una . WHERE
cláusula Pero en ningún caso la cláusula WHERE
pertenecen a la declaración INSERT
directamente)
¿Cómo puedo añadir el valor 10 a la columna sólo en el modelo de moto es hombre en bicicleta de montaña – Matt
@ Matt:. no sé si lo viste, pero edité mi respuesta; todo, desde la palabra ** Actualizar ** en adelante, es nuevo, y yo * creo * es lo que estás buscando. Si no es así, puede que tenga que publicar algunos datos de muestra, que muestren cómo se verá su tabla antes y después de ejecutar la declaración. – ruakh
@Matt: Además, ¿qué DBMS estás usando? (MySQL? PostgreSQL? Oracle? SQL Server?) Puedo agregar enlaces a la documentación relevante, que probablemente encuentre útil, pero las reglas detalladas dependen un poco del DBMS, por lo que no quiero publicar (decir) Oracle documenta si está usando (digamos) MySQL. – ruakh