#c# #sql
#c# #sql
Вопрос:
Я хочу сравнить два разных столбца таблицы (ID), если оба идентификатора одинаковы, я хочу вставить имя местоположения, имеющееся в первой таблице, во вторую таблицу
Table 1
-------
Id Name
---------
1 Hyd
2 Banglore
---------
Table 2
-------
Id Name
-------
1
2
Из первого идентификатора таблицы и второго идентификатора таблицы, если оба равны, я хочу вставить столбец name во второй столбец, который существовал в той же строке id, используя C # Помогите мне
Комментарии:
1. Где вы застряли? Вы можете сравнивать значения с помощью оператора равенства (
==
), вы можете условно запускать код на основе этого сравнения с условным блокомif (someCondition) { ... }
, вы можете подключаться к базе данных множеством различных способов. Что вы пробовали и что не работает?
Ответ №1:
Ну, здесь без лишней информации.
Это предполагает, что когда вы говорите c #, вы на самом деле имеете в виду C # для SQL.
итак, в SQL сделайте что-то вроде этого
UPDATE Table2
SET Table2.Name = Table1.name
FROM Table1
WHERE Table2.ID = table1.ID
сделайте это хранимой процедурой, затем используйте c # для вызова процедуры run.
опять же, это всего лишь пример, основанный на предположении, что вы действительно хотите, чтобы это было сделано в SQL, и используете c # для его запуска
Ответ №2:
Попробуйте следующее:
create table #testsource
(ID int,city nvarchar(200))
insert into #testsource (ID,city)
values(1,'mumbai'),
(2,'Pune')
select *from #testsource
create table #testdestination
(ID int,city nvarchar(200))
//insert rows in table
insert into #testdestination (ID,city) values(1,''),(2,''),(3,'')
//select rows from table
select *from #testdestination
//get the values from Source table and update to Destination table
update #testdestination set city=s.city
from #testsource s
where s.ID=#testdestination.ID
select *from #testdestination
drop table #testsource
drop table #testdestination
Результаты:
Предполагая, что ваши имена двух таблиц с ‘Table1’ и ‘Table2‘
CREATE PROCEDURE [dbo].[p_UpdateDestinationTable]
AS
BEGIN
UPDATE Table2
SET Table2.Name = t1.name
FROM Table1 t1
WHERE Table2.ID = t1.ID
ПРИМЕЧАНИЕ: Это пример, используемый с Temporay
Table
plelase , не используйте «как есть». внесите изменения в соответствии с вашими потребностями.