Campo de tabla de actualización de SQL x donde el campo y es z
Frecuentes
Visto 2,167 veces
1
¿Cómo puedo insertar valores en una tabla de SQL Server, en la columna X, donde la columna Y es Z?
INSERT INTO dbo.Cities (County_Id)
WHERE Code >= 10000 AND Code < 20000
VALUE 20
3 Respuestas
2
UPDATE Cities SET County_Id = 20 WHERE Cities.Code >= 10000 AND Cities.Code < 20000
contestado el 22 de mayo de 12 a las 18:05
2
En primer lugar, parece que está tratando de hacer un UPDATE
, ya que INSERT
se utiliza para agregar un registro completamente nuevo en la tabla en lugar de actualizar uno o más registros existentes.
Realmente deberías estar usando UPDATE-JOIN
en lugar de INSERT-SELECT
, si entiendo su requerimiento correctamente. Este planteamiento de « El subproceso StackOverflow proporciona un buen ejemplo/explicación.
contestado el 23 de mayo de 17 a las 13:05
1
Insert dbo.Cities( County_Id )
Select Name
From dbo.Counties
Where Counties.Id = 20
And Exists (
Select 1
From dbo.Cities As C1
Where C1.County_Id = Counties.Name
And C1.Code >= 10000
And C1.Code < 20000
)
contestado el 22 de mayo de 12 a las 17:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas sql sql-server sql-server-2008 insert or haz tu propia pregunta.
¿Cómo se relacionan entre sí la tabla Ciudades y la tabla Condados? - Thomas
un poco raro eso
Cities.County_Id
mapas aCounties.Name
pero está bien. - ThomasNecesito dar todas las ciudades que tienen Código entre 10000 y 20000, County_Id de por ejemplo 20 - Davor Zubak
Hrmm, ¿entonces desea insertar el nombre del condado en el County_Id de las ciudades? ¿O te refieres a la identificación del condado? - Eric H