mysql两行比较_mysql – SQL比较表中的两行以查找有多少值不同

我有下表用于存储用户数据:

例如

TABLE: users

COLUMNS:

...

maritalStatus (INT) - FK

gender (CHAR)

occupation (INT) - FK

...

现在我想比较此表中的两个用户,看看有多少列匹配任何两个给定用户(比如用户X和用户Y)

我是通过mySQL存储过程实现的,分别获取每个值然后比较它们

例如

SELECT maritalStatus from users where userID = X INTO myVar1;

SELECT maritalStatus from users where userID = Y INTO myVar2;

IF myVar1 = myVar2 THEN

...

END IF;

是否有一种使用SQL查询的较短方式,我可以比较表中的两行并查看

哪些列不同?我不需要知道他们实际上有多么不同,只是

需要知道它们是否包含相同的值.另外我只会比较选定的列,

不是用户表中的每一列.


版权声明:本文为weixin_27943395原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。