MongoDB在Laravel7.x中的查询(如何使用regex正则表达式过滤包含某字符串的记录)
这里有books(书籍)和press(出版社)两张表,其中books表有press字段包含了出版社的uuid、name等字段。如何过滤掉包含test字符串的出版社?
在js和php中这非常简单,写个正则表达式:/^((!?test).)*$/即可。可是亲测的时候,发现在Laravel的where条件语句中不起作用:Books::where('press.name','//^((!?test).)*$/')->get();
试了多种方式发现只有Laravel自带的laravel regexp比较好用:Books::where('press.name','not regexp','/test/'); 至此效果达到了,bingo!
浙公网安备 33010602011771号