我正在尝试创建一个触发器,在更新/插入数据库时创建/更新列中的数据。我有一个名为topic
的列,它应该填充其他列的值。我可以使用topic
语句填充select
列,但我不确定触发器中的语法如何获得相同的结果。
这是我的SELECT
声明:
select
name, city, topic,
name + ' - ' + city + ' - '+
CASE
WHEN new_car = 'yes' THEN 'Car,' ELSE ''
END +
CASE
WHEN new_bus = 'yes' THEN 'TBus,' ELSE ''
END +
CASE
WHEN new_bike = 'yes' THEN 'Bike,'ELSE ''
END +
CASE
WHEN new_train = 'yes' THEN 'Train,' ELSE ''
END +
CASE
WHEN new_truck = 'yes' THEN 'Truck,' ELSE ''
END +
CASE
WHEN new_boat = 'yes' THEN 'Boat,'ELSE ''
END +
CASE
WHEN new_walk = 'yes' THEN 'Walk,' ELSE ''
END +
CASE
WHEN new_motorbike = 'yes' THEN 'Motor Bike, ' ELSE ''
END AS topic
from
dbo.myTableView
由于
编辑1:
上面的SELECT
语句使用VIEW
进行查询,但正在查询的实际列来自不同的表。
表1(topicTable):
name|topic|new_car|new_bus|new_bike|new_train|new_truck|new_boat|new_walk|new_motorbike
表2(Addresstable):
street1|street2|street3|city|state|zipcode|country