除了不在mysql中工作?

Posted

技术标签:

【中文标题】除了不在mysql中工作?【英文标题】:Except not working in mysql? 【发布时间】:2015-03-23 12:08:09 【问题描述】:

我正在尝试从特定表中获取 id,但从另一个表中的那些 id 除外,但它不起作用:

SELECT id FROM table1 
EXCEPT 
SELECT id FROM table2

【问题讨论】:

没错。 mysql 不支持except 功能请求除外:bugs.mysql.com/bug.php?id=1309 Error when using except in a query的可能重复 【参考方案1】:

你可以试试这个:

SELECT id FROM table1 
where id not in (SELECT id FROM table2)

MYSQL 不支持EXCEPT

【讨论】:

【参考方案2】:

我认为 mysql 不支持 EXCEPT。而是尝试这种方式:

SELECT t1.id 
FROM table1 t1 
WHERE NOT EXISTS 
    ( SELECT 0 
      FROM table2 t2 
      WHERE t2.id = t1.id ) 

【讨论】:

【参考方案3】:

使用Not IN

SELECT `id` FROM `table1` 
WHERE `id` NOT IN (SELECT `id` FROM `table2`);

有关更多信息,您可以查看 MySQL NOT IN() function。

您也可以使用Left Join

【讨论】:

【参考方案4】:

在mysql中没有关键字'except'。

见:Error when using except in a query

对于使用not inexists 的替代方式

【讨论】:

【参考方案5】:

您可以使用Left Join,如下:

SELECT t1.id 
FROM table1 AS t1 LEFT JOIN table2 AS t2 
    ON t1.id = t2.id
WHERE t2.id IS NULL

更多信息,你可以去MySQL MINUS (or Except)

【讨论】:

以上是关于除了不在mysql中工作?的主要内容,如果未能解决你的问题,请参考以下文章

WidgetPreviewContext 不在框架中工作

Flutter(Web)提供程序不在发布模式下工作,但在调试中工作

SSE 2005 存储过程在管理工作室中工作,但不在 C# DAL 中

Django中的Send_mail,在shell中工作,在本地工作,不在视图中

pyjnius不在虚拟环境中工作

delaysContentTouches = false 不在 UITableView Swift 中工作?