Connecting Tech Pros Worldwide Help | Site Map

Insert Into Select trouble

 
LinkBack Thread Tools Search this Thread
  #1  
Old July 21st, 2008, 06:15 AM
Brian
Guest
 
Posts: n/a
Default Insert Into Select trouble

I've tried for hours... and my issue is this:

Table 1 has FirstName, LastName, Address, Birthday, (and other
columns)
Table 2 has FirstName, LastName, Address, Birthday, (and other
columns)

Most of Table1.Birthday is null. Some are not.
All of Table2.Birthday has valid Birthdays.

I want to insert Table2.Birthday into Table1.Birthday only where
Table1.Birthday is null.

Any help is appreciated.

  #2  
Old July 21st, 2008, 06:25 AM
Brian
Guest
 
Posts: n/a
Default Re: Insert Into Select trouble

Oh... and here's the closest I have come..

insert into table1 (birthday)
SELECT birthday
FROM table2,table1
WHERE (table1.firstname=table2.firstname AND
table1.lastname=table2.lastname AND table1.address=table2.address)
AND table1.birthday is null

If you delete the first line, I get the data I am looking to update
Table1 with.
  #3  
Old July 21st, 2008, 06:35 AM
Brian
Guest
 
Posts: n/a
Default Re: Insert Into Select trouble

Here is what worked

Update Table1
set Table1.Birthday=Table2.Birthday
From table1,table2
where (table1.firstname=table2.firstname AND
table1.lastname=table2.lastname AND table1.address=table2.address)
and table1.birthday is null
  #4  
Old July 21st, 2008, 01:15 PM
Roy Harvey (SQL Server MVP)
Guest
 
Posts: n/a
Default Re: Insert Into Select trouble

On Sun, 20 Jul 2008 23:31:30 -0700 (PDT), Brian <eyeman@gmail.com>
wrote:
Quote:
>Here is what worked
>
>Update Table1
>set Table1.Birthday=Table2.Birthday
>From table1,table2
>where (table1.firstname=table2.firstname AND
>table1.lastname=table2.lastname AND table1.address=table2.address)
>and table1.birthday is null
That uses syntax proprietary to SQL Server. In standard SQL you could
use:

UPDATE Table1
SET Table1.Birthday =
(SELECT Table2.Birthday
FROM Table2
WHERE table1.firstname = table2.firstname
AND table1.lastname = table2.lastname
AND table1.address = table2.address)
WHERE table1.birthday is null

Roy Harvey
Beacon Falls, CT
 

Bookmarks

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Popular Articles

What is Bytes?

We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights. Get the best answers to your questions from over 220,989 network members.