phpmyadmin EXCEPT SELECT 不可用
Posted
技术标签:
【中文标题】phpmyadmin EXCEPT SELECT 不可用【英文标题】:phpmyadmin EXCEPT SELECT is not usable 【发布时间】:2020-04-25 22:05:53 【问题描述】:我在从 2 个表中获取数据时尝试使用EXCEPT
,但我无法使用EXCEPT SELECT
。
phpmyadmin 无法识别EXCEPT
,并且不允许我使用第二个SELECT
。
还有其他方法可以检查表格上的相同条目吗?
编辑: 如果 t1 有行:
id1-name1, id3-name3
而 t2 有:
id1-name1, id3-name3, id4-name4
然后我会得到一个只有 id4-name4 的表(谈论行)
【问题讨论】:
请提供样本数据和预期结果。 【参考方案1】:mysql 不支持EXCEPT
语法。
一个典型的解决方案是改用NOT EXISTS
。假设两个表的结构都像(col1, col2, col3)
,你会去:
select t2.*
from t2
where not exists (
select 1
from t1
where t2.col1 = t1.col1 and t2.col2 = t1.col2 and t2.col3 = t1.col3
)
这将返回来自t2
的行,其中t1
中不存在具有三列中相同值元组的行。
【讨论】:
还有一个相关问题,我该如何从这个新制作的表格中编辑或选择内容?以上是关于phpmyadmin EXCEPT SELECT 不可用的主要内容,如果未能解决你的问题,请参考以下文章
[讲解]sql except和intersect运算符(比拟两个或多个select语句的结果并前去非重复值)
[phpmyadmin] phpmyadmin select command denied to user