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