我的数据库中有一个表CANDIDATE在MySQL 5.5下运行,我试图从表中获取行,其中xy包含在firstname中,所以我可以在两个查询下面运行
SELECT FIRSTNAME FROM candidate WHERE FIRSTNAME REGEXP '^xy.+';
SELECT FIRSTNAME FROM candidate WHERE FIRSTNAME REGEXP '^xy.*';
我得到相同的结果,所以想要在这两个REGEXP中获得差异。
答案 0 :(得分:4)
*
零或更多前面的元素。
+
一个或更多前面的元素。
答案 1 :(得分:3)
+
表示一个或多个,*
表示零或更多
答案 2 :(得分:2)
+
导致生成的RE匹配前一个RE的一次或多次重复。 ab +将匹配'a',后跟任何非零数字的'b';它不会只匹配'a'
*
导致所得到的RE匹配前一个RE的0或更多次重复,尽可能多的重复。 ab *将匹配'a','ab'或'a',后跟任意数量的'b'。
答案 3 :(得分:1)
a *对应于重复“a”零次或多次
a +对应于重复“a”一次或多次
答案 4 :(得分:1)
所以想要在这两个REGEXP中获得差异。
将名称'xy'添加到数据库中。