我刚才的问题是 - insert substring into new columnSQL我需要多个案件的一列
我有两个情况下,我想在同一列运行。
第 -
SET [ref_id] = CASE
WHEN CHARINDEX('-', [full_id]) = 4
THEN SUBSTRING([full_id], 1, 3) ELSE NULL
第二 -
SET [ref_id] = CASE
WHEN CHARINDEX('ZZZ-', [full_id]) = 1
THEN SUBSTRING([full_id], 5, 3) ELSE NULL
我[full_id]
列数据格式主要是ABC-123D2-45FG67
但有些事情是所有数字或前缀ZZZ-
如果数据只是我希望[ref_id]
列的数字为NULL。
如果数据前缀为ZZZ-
我希望跳过该部分。
如果数据不ZZZ-
与ABC-
开始我要复制的ABC
(在某些情况下,有AB-1234
这应该是NULL)。
我的代码工作正常,除了两个字符串不能一起工作,并且当我分别运行它们时,它们会取消先前查询的工作。
我如何可以同时运行,并用null最终只能像123456
和AB-1234
在格式数据谢谢你的帮助。
我试图巢,但第一种情况后,它会给我的错误。现在就试试你的。 = D – weewa
它给了我一个错误在这句话的结尾'错误的语法附近的关键字'ELSE''我认为它的最后一个'ELSE' – weewa
哇,试图从()内删除else null,但不是外。谢谢! – weewa