Php 如何使mysql类似于和不类似于从列表中获取字符串
我有以下mysql代码Php 如何使mysql类似于和不类似于从列表中获取字符串,php,mysql,Php,Mysql,我有以下mysql代码 SELECT * FROM loans_book WHERE the_amount < 500000 AND loan_amount_you_require NOT LIKE '%avensis%' OR loan_amount_you_require NOT LIKE '%prius%' OR loan_amount_you_require NOT LIKE '%porsch%' OR 从贷款金额
SELECT * FROM loans_book WHERE the_amount < 500000
AND
loan_amount_you_require
NOT LIKE '%avensis%'
OR
loan_amount_you_require
NOT LIKE '%prius%'
OR
loan_amount_you_require
NOT LIKE '%porsch%'
OR
从贷款金额<500000的贷款账簿中选择*
及
您需要的贷款金额
与“%avensis%”不同
或
您需要的贷款金额
不像'%prius%'
或
您需要的贷款金额
不像“%porsch%”
或
问题是,如果我继续添加不喜欢的,它们肯定会加起来100个,我怀疑这个列表可能会更长
我喜欢mysql使用NOT IN
的方式,我可以用逗号分隔字符串,但NOT like
的不同之处在于每次都需要指定列名
有没有一种方法可以让我在每次使用
而不是时都能绕过要求来声明列名?检查正则表达式中的模式列表应该可以做到:
SELECT *
FROM loans_book
WHERE the_amount < 500000
AND loan_amount_you_require
REGEXP '(avensis|prius|porsch)';
选择*
借书
如果金额<500000
以及你需要的贷款金额
REGEXP'(avensis | prius | porsch)';
另请参见尝试以下操作:
SELECT
*
FROM
loans_book
WHERE
the_amount < 500000
AND
loan_amount_you_require NOT REGEXP ('avensis|prius|porsch')
选择
*
从…起
借书
哪里
金额<500000
及
您需要的贷款金额不需要REGEXP('avensis | prius | porsch')
您可以尝试为此使用非REGEXP
。。。查询应如下所示:
SELECT
*
FROM
loans_book
WHERE
the_amount < 500000
AND loan_amount_you_require NOT REGEXP 'avensis|prius|porsch';
选择
*
从…起
借书
哪里
金额<500000
您所需的贷款金额不包括REGEXP‘avensis | prius | porsch’;
仅当字段正好是avensis
、prius
或porsch
时,此选项才有效。。。而这不是OP想要的…我只是有了一些新的想法,并尝试用我自己的。我也是一个学习者。