Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

[SOLUCIONADO] Insertar una fila desde una consulta

Estas en el tema de Insertar una fila desde una consulta en el foro de SQL Server en Foros del Web. Que tala maestros, he aquí mi duda Necesito insertar un valor tipo entero en una tabla remporal, el valor (uno solo) que se va a ...
  #1 (permalink)  
Antiguo 21/02/2013, 16:59
 
Fecha de Ingreso: enero-2002
Mensajes: 4.159
Antigüedad: 22 años, 3 meses
Puntos: 22
Insertar una fila desde una consulta

Que tala maestros, he aquí mi duda

Necesito insertar un valor tipo entero en una tabla remporal, el valor (uno solo) que se va a insertar proviene de un SELECT he aquí la situación:

Verifico que no exista la tabla donde se insertará el valor
Cita:
if object_id('tempdb.dbo.#recibidos') is not null drop table dbo.#recibidos;
Creo la tabla
Cita:
create table dbo.#recibidos
(
intfecharecibida int
);
Muy bien, si ejecuto sólo la consulta que me arroja el valor, funciona sin problemas:

Cita:
SELECT RIGHT('11/29/2012', 4) + SUBSTRING('11/29/2012', 0, CHARINDEX('/','11/29/2012'))
Valor recibido 201211

Pero cuando trato de insertar ese valor en la tabla #recibidos mediante la siguiente consulta:

Cita:
INSERT INTO dbo.#recibidos
(
intfecharecibida
)
SELECT * FROM (SELECT RIGHT('11/29/2012', 4) + SUBSTRING('11/29/2012', 0, CHARINDEX('/','11/29/2012')))
Me marca el siguiente error:

Msg 102, Level 15, State 1, Line 5
Incorrect syntax near ')'.


Ya perdí la cuenta de las variaciones que le he hecho a la consulta y no mas no quiere funcionar, honestamente como ya se habrán dado cuenta las subquerys no son mi fuerte, por eso solicito su ayuda que será siempre bienvenida.

Agradezco desde ahora su ayuda.

Saludos.

Última edición por Elalux; 21/02/2013 a las 17:07
  #2 (permalink)  
Antiguo 21/02/2013, 19:14
Avatar de Joch_pa  
Fecha de Ingreso: octubre-2009
Ubicación: Pachuca De Soto, Hidalgo, Mexico, Mexico
Mensajes: 122
Antigüedad: 14 años, 6 meses
Puntos: 7
Respuesta: Insertar una fila desde una consulta

Sera que hace faltan los Alias, del campo y de la subconsulta?


Código SQL:
Ver original
  1. IF object_id('tempdb.dbo.#recibidos') IS NOT NULL DROP TABLE dbo.#recibidos
  2.  
  3. CREATE TABLE dbo.#recibidos ( intfecharecibida INT )
  4.  
  5. --SELECT RIGHT('11/29/2012', 4) + SUBSTRING('11/29/2012', 0, CHARINDEX('/','11/29/2012'))
  6.  
  7. INSERT INTO dbo.#recibidos (intfecharecibida )
  8. SELECT * FROM (
  9.     SELECT RIGHT('11/29/2012', 4) + SUBSTRING('11/29/2012', 0, CHARINDEX('/','11/29/2012')) AS  intfecharecibida
  10.     ) A


el alias de tu subconsulta es "A"
  #3 (permalink)  
Antiguo 22/02/2013, 08:52
 
Fecha de Ingreso: enero-2002
Mensajes: 4.159
Antigüedad: 22 años, 3 meses
Puntos: 22
Respuesta: Insertar una fila desde una consulta

Funcionó, muchísimas grácias Joch_pa
  #4 (permalink)  
Antiguo 22/02/2013, 10:34
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Insertar una fila desde una consulta

No se porque haces maroma y teatro con los formatos fecha, deberias manejar ANSI y simplemente se haria mucho mas facil
__________________
MCTS Isaias Islas

Etiquetas: fila, select, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:04.