如何判断mysql中数据表中两个列之间的相同记录和不同记录

如何判断mysql中数据表中两个列之间的相同记录和不同记录,第1张

查看可用如下方法:

1、创建测试表,插入数据

1

2

3

4

5

6

7

8

9

10

11

12

13

create table product

(id int,

name varchar(10),

totol int)

insert into product values (1,'香蕉',100)

insert into product values (2,'橘子',67)

insert into product values (3,'葡萄',89)

insert into product values (4,'苹果',235)

insert into product values (5,'香蕉',77)

insert into product values (6,'芒果',34)

insert into product values (7,'葡萄',78)

insert into product values (8,'梨',24)

表中数据如:

2、如果查询name列有重复的数据,可执行sql语句:

1

select * from product where name in (select name from product group by name having COUNT(*)>1)

说明:查询的结果就是香蕉和葡萄在表中是有重复的

如何比较2个mysql数据库数据

sql语句:因为MySQL 没有full outer join,所以用left join union all right join来实现

select a.table_schema,

a.table_name,

a.column_name,

b.table_schema,

b.table_name,

b.column_name

from information_schema.columns a

left join information_schema.columns b on a.table_name = b.table_name and a.column_name =

b.column_name andb.table_schema = 'DBNAMe1'

where a.table_schema = 'DBNAME2' and

(b.table_name is null or

b.column_name is null)

union all

select a.table_schema,

a.table_name,

a.column_name,

b.table_schema,

b.table_name,

b.column_name

from information_schema.columns a

left join information_schema.columns b on a.table_name = b.table_name and a.column_name =

b.column_name andb.table_schema = 'DBNAME2'

where a.table_schema = 'DBNAME1' and

(b.table_name is null or

b.column_name is NULL)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/7099574.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-01
下一篇2023-04-01

发表评论

登录后才能评论

评论列表(0条)

    保存