Sunday 15 September 2013

sql server - SQL - Match String and Update Row, using Excel list -



sql server - SQL - Match String and Update Row, using Excel list -

i have db table [list1], 2 columns, name, number

sqlfiddle

i have excel spreadsheet 2 columns,names , numbers. want match names in excel names column in sql , if match found insert relevant number in sec column.

something tells me need build array / or csv , run tsql accomplish this. used task> import info build db table.

will importing info 1 time again overwrite existing data?

what efficient way import info, update existing numbers? [edit, have made progress, read on]

i have managed create conditional insert: set @personname = 'andy insert people (name, number) select @personname not exists ( select * people name = @personname );

how pump name list @personname variable , loop through command in sql?

update:

i want update datasets based on dual column first/last name. work? update : yes worked, final code below.

update p set p.number = s.numbers people p bring together dbo.[spreadsheet] s on p.firstname = s.firstname , p.lastname = s.lastname

if understood correctly , want match relatively little amount of info (up 2k-5k rows) between excel , database table may perform next sequence of actions:

in ssms execute: create table dbo.[spreadsheet] (firstname nvarchar(100), lastname nvarchar(100), numbers int); in excel spreadsheet re-create buffer info firstname, lastname , numbers columns (without headers) in ssms object explorer: tables->right click->refresh select dbo.spreadsheet table->right click->edit top 200 rows in designer select lastly row->right click on row header->paste and execute next update statement (see below) update p set p.number = s.numbers people p bring together dbo.[spreadsheet] s on s.firstname = p.firstname , s.lastname = p.lastname

sql sql-server

No comments:

Post a Comment