这是我正在研究的一个非常简化的版本,但希望它能传达我的观点。
我有一个 mysql 表,它看起来像这样:
CREATE TABLE Table1(
ID INT AUTO_INCREMENT,
Val VARCHAR(50),
PRIMARY KEY (id)
);
INSERT INTO Table1 (Val) SELECT "Reference.Int('ABCD')";
INSERT INTO Table1 (Val) SELECT "Reference.Str('EFG','ABC')";
INSERT INTO Table1 (Val) SELECT "Reference.Int('HIJ','EFG','ABC')";
我正在处理的方法接收括号中的值之一作为参数,例如:“EFG”。我是否可以抓取表中包含该值的所有行。我知道,如果我做类似的事情:
SELECT * from Table1 where Val LIKE "%EFG%"
我可以获得正确的值,我的问题是我需要更具体,因为例如其中一个值可能看起来像:
Reference.Int('ABCD') + EFGX/200
或者
EFG + anything else
这意味着我还需要以某种方式包括以下部分:“Reference.Str()”。我并不真正关心括号中的其他任何内容,我唯一关心的是获取包含我收到的参数值的那些。
我想知道这是否可以通过使用 REGEXP 来解决,但我对此的了解充其量是薄弱的。
任何帮助表示赞赏。