INSERT INTO Combinado ...

07/07/2004 - 19:14 por MhBeyle | Informe spam
No sé si esto es posible ...

Tengo una tabla que almacena líneas de albaranes, pedidos y facturas,
diferenciados entre sí por el valor de algunos campos.

Necesito que, al pasar una línea de pedido a albarán, se copie toda la
línea con el único cambio de los valores que diferencian cada uno de
los documentos. Es decir, si tengo un pedido con diez campos y un
valor 1, necesito copiar toda esa línea "tal cual" a otro registro,
pero con el valor 1 cambiado por, por ejemplo, un 2.

Mi intención es hacer un INSERT INTO que combine las subórdenes VALUES
y SELECT, pero no sé si esto es posible. Y no puedo copiar toda la
línea igual y luego hacer un UPDATE, ya que tendría líneas idénticas.
Tengo que hacerlo todo en un paso.

MhBeyle __
 

Leer las respuestas

#1 Javier Loria
07/07/2004 - 19:47 | Informe spam
Hola:
Si claro:
INSERT INTO TodosJuntos (Col1, ., ColX)
SELECT Tipo, @Valor2, ..., @Valor3
FROM (SELECT 1 AS Tipo UNION ALL
SELECT 2 UNION ALL
SELECT 3) AS Tipos
Ese diseno es valido (cuestionable pero valido) siempre y cuando las
tres entidades (albaranes, pedidos y facturas) tengan las mismas columnas.
Si no lo tienen mejor separarlo en tres tablas.
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

MhBeyle escribio:
No sé si esto es posible ...

Tengo una tabla que almacena líneas de albaranes, pedidos y facturas,
diferenciados entre sí por el valor de algunos campos.

Necesito que, al pasar una línea de pedido a albarán, se copie toda la
línea con el único cambio de los valores que diferencian cada uno de
los documentos. Es decir, si tengo un pedido con diez campos y un
valor 1, necesito copiar toda esa línea "tal cual" a otro registro,
pero con el valor 1 cambiado por, por ejemplo, un 2.

Mi intención es hacer un INSERT INTO que combine las subórdenes VALUES
y SELECT, pero no sé si esto es posible. Y no puedo copiar toda la
línea igual y luego hacer un UPDATE, ya que tendría líneas idénticas.
Tengo que hacerlo todo en un paso.

MhBeyle __

Preguntas similares