WHERE和WHERE不在同一查询中mysql

WHERE和WHERE不在同一查询中mysql,mysql,Mysql,在同一个查询中,我正在编写一个python脚本,其中一个函数查询mysql数据库,我需要这个脚本来调用一个特定的名称或让它返回所有人,顺便说一句,如果我能让它调用一组组名称,那会更好。我用一个简单的LIKE语句完成名称查询 SELECT * FROM db.table WHERE column LIKE '%searchterm'; 但是,我希望能够使用DATE列对数据进行进一步排序,我为DATE编写的查询是 SELECT * FROM db.table WHERE NOT (column &

在同一个查询中,我正在编写一个python脚本,其中一个函数查询mysql数据库,我需要这个脚本来调用一个特定的名称或让它返回所有人,顺便说一句,如果我能让它调用一组组名称,那会更好。我用一个简单的LIKE语句完成名称查询

SELECT * FROM db.table WHERE column LIKE '%searchterm';
但是,我希望能够使用DATE列对数据进行进一步排序,我为DATE编写的查询是

SELECT * FROM db.table WHERE NOT (column < startdate OR column > enddate);
从db.table中选择*而不是(列enddate);
这两个查询在单独运行时都能正常工作,当我尝试像这样组合它们时,会出现语法错误

SELECT * FROM db.table WHERE NOT (column < startdate OR column > enddate) AND WHERE column LIKE '%searchterm';
SELECT*FROM db.table WHERE NOT(columnenddate)和WHERE类似“%searchterm”的列;

有没有办法修复查询以使其正常工作?

您的查询中有一对多的位置,请尝试更改为

SELECT * FROM db.table WHERE NOT (column < startdate OR column > enddate) AND column LIKE '%searchterm';
SELECT*FROM db.table WHERE NOT(columnenddate)和类似“%searchterm”的列;

和WHERE
更改为
,这是为我做的。为什么不需要第二个呢?在我看来,WHERE NOT并不适用于整个查询,这似乎与直觉相反。所有关键字只有一次,您可以设置select并列出要选择的内容、从哪些表中选择以及在哪里设置限制。因此,您已经将上下文更改为where,只需指定where有另一个检查