【发布时间】:2019-06-28 16:53:26
【问题描述】:
我正在尝试将每家公司的多个联系人值中的一个更新为默认值。我不在乎哪个联系人,但只能有一个默认值。
这是一个布局示例
Table: companyemail
Company field: cmp_id 6-8 digit varchar
Contact field: contact_name 50 digit varchar
Default Contact: ce_defaultcontact possible boolean values is Y or N
我有这些数据
Company: ABCDEF
Contact: John Doe Default: N
Jane Doe Default: N
John Smith Default: N
这存在于许多公司中。我正在尝试将 sql 中的表更新为仅将 1 个联系人设置为默认值。我已经尝试了以下
1.
update companyemail
set ce_defaultcontact = 'Y'
where contact_name = (
Select Top 1 contact_name
From companyemail
Where ce_defaultcontact = 'N'
Order by contact_name DESC )
FAIL (Only set 1 contact to Y)
2。
update companyemail
set ce_defaultcontact = 'Y'
where contact_name = (
Select Max(companyemail.contact_name) from companyemail)
失败(错误)
【问题讨论】:
标签: sql sql-server ssms-2016