INSERT SELECT SQL 2000

TATILILIKA 28/07/2009 11:52:46
#318115
GALERA,

Preciso fazer o seguinte:

INSERT em uma tabela usando a data de um campo da mesma tabela mas com outra condição, mas eu não como fazer isso.

Pensei em algo assim mas num deu muito certo. Se alguém pode me ajudar!!!

INSERT INTO PAGAMENTO
(STATUS, DDTHISTORYDATEBEGIN, CCDSALESORDERID, DDTHISTORYDATEEND, CCDCODUSR)

Values
([ô]PGTO[ô], (SELECT DDTHISTORYDATEBEGIN FROM PAGAMENTO where STATUS = [ô]APRO[ô]), [ô]4906-10442[ô], GETDATE(), NULL)

Valew!!!
RCMRO 28/07/2009 15:03:32
#318143
Tati,

Só existe 1 registro com STATUS de [Ô]APRO[Ô] na tabela?

Deixa te pergunta o seguinte:
- Só existe um registro com STATUS = [ô]APRO[ô] na tabela PAGAMENTO?
- Quer inserir UM só registro ou vários, um para cada DDTHISTORYDATEBEGIN com STATUS = [ô]APRO[ô]?
- Essa tabela tem Chave Primária?


Me responda e eu consigo te ajudar

Abraço
RICART 28/07/2009 15:47:42
#318149
Resposta escolhida
Bom,
Se vc quiser pegar todos os registros da tabela pagamento que tenham o status [ô]APRO[ô], pode ser da form abaixo:
INSERT INTO PAGAMENTO
(STATUS, DDTHISTORYDATEBEGIN, CCDSALESORDERID, DDTHISTORYDATEEND)
SELECT [ô]PGTO[ô] AS STATUS, DDTHISTORYDATEBEGIN, [ô]4906-10442[ô] AS CCDSALESORDERID, GETDATE() AS DDTHISTORYDATEEND FROM PAGAMENTO where STATUS = [ô]APRO[ô]

TATILILIKA 28/07/2009 15:48:04
#318150
Olá!

Então segue as respostas:

- Só existe um registro com STATUS = [ô]APRO[ô] na tabela PAGAMENTO? Resposta : SIM
- Quer inserir UM só registro ou vários: RESPOSTA: Vários
--- um para cada DDTHISTORYDATEBEGIN com STATUS = [ô]APRO[ô]? Resposta: SIM... 1 para cada.
- Essa tabela tem Chave Primária? SIM

Obrigada!
RCMRO 28/07/2009 16:19:22
#318152
Tati,

Se só existe um registro com STATUS = [ô]APRO[ô] então o nosso amigo RICART já matou bem no peito e marcou gol.

Abraços
Tópico encerrado , respostas não são mais permitidas