我有大约2900条记录要做。
我不希望'null'之间有空格;
我的问题:
UPDATE route_table_ex
SET msg_type = ' null '
WHERE queue_name = ' DMGGCA5GOPAMSDXMLMSG ';
预期产出:
UPDATE route_table_ex
SET msg_type = 'null'
WHERE queue_name = 'DMGGCA5GOPAMSDXMLMSG';
答案 0 :(得分:0)
UPDATE route_table_ex SET msg_type = LTRIM(RTRIM('null'))WHERE queue_name ='DMGGCA5GOPAMSDXMLMSG';
答案 1 :(得分:0)
要删除" null"周围的空格,请运行:
UPDATE route_table_ex
SET msg_type = LTRIM(RTRIM(msg_type))
WHERE queue_name = ' DMGGCA5GOPAMSDXMLMSG ';
我不确定您对WHERE子句的要求。
如果你想从两列中删除所有这些空格,也许这就是你想要的:
UPDATE route_table_ex
SET msg_type = LTRIM(RTRIM(msg_type)),
queue_name = LTRIM(RTRIM(queue_name))
答案 2 :(得分:0)
按CTRL + H(或转到搜索/替换),搜索空格+撇号('),替换为撇号('),单击“全部替换”一次或两次,直到它告诉您0次出现被替换。然后搜索撇号+空格('),也用撇号(')替换并重复“全部替换”过程。
答案 3 :(得分:0)
请确认,这些是(单)普通空白。
如果字符串真的只是阅读null
,请尝试
UPDATE route_table_ex
SET msg_type = 'null'
WHERE queue_name LIKE '%DMGGCA5GOPAMSDXMLMSG%';
否则沿着
UPDATE route_table_ex
SET msg_type = REGEXP_REPLACE(msg_type, '[^a-z0-9]', '', 1, 0, 'i')
WHERE queue_name LIKE '%DMGGCA5GOPAMSDXMLMSG%';
在合适的编辑器中(Notepad ++实际应该这样做。)尝试正则表达式来修复数据,例如,搜索'.*?null.*?'
并用'null'
或更灵活的'.*?([a-zA-Z0-9]+).*?'
替换为{{1 }}