gpt4 book ai didi

mysql - 在 MySQL SELECT 语句中使用正则表达式的正确格式(不在 WHERE 部分内)

转载 作者:行者123 更新时间:2023-11-29 12:49:00 25 4
gpt4 key购买 nike

我需要使用 REGEX(或类似功能)来更新现有表,以便识别字符串字段是否包含格式正确的代码:

UPDATE tblRequests SET flagIsRefCodeOK=(RefCode REGEX '^[A-Z0-9]{8}-(?:[A-Z0-9]{4}-){3}[A-Z0-9]{12}$') WHERE DataSetID=11

但它似乎不喜欢这样的说法:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'REGEX '^[A-Z0-9]

请注意,此代码将添加到 BEFORE INSERT 触发器中,该触发器负责更新许多标志。我不太担心 REGEX 是否正确,特别是在 MySQL 中,我只是希望它能够正常工作。如果这不起作用,那么我会找出确切的正则表达式。

谢谢

最佳答案

运算符名称是 REGEXP 而不是 REGEX,因此请尝试:

UPDATE tblRequests
SET flagIsRefCodeOK= (RefCode REGEXP '^[A-Z0-9]{8}-(?:[A-Z0-9]{4}-){3}[A-Z0-9]{12}$')
WHERE DataSetID=11;

关于mysql - 在 MySQL SELECT 语句中使用正则表达式的正确格式(不在 WHERE 部分内),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25036174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com