MySQL连接查询语句(内连接,外连接)

连接查询

内连接

select suppliers.s_id,s_name,f_name,f_price

from suppliers,fruits

where suppliers.s_id = fruits.s_id

上述查询等价于inner join on 内连接查询

select suppliers.s_id,s_name,f_name,f_price

from suppliers inner join fruits

on suppliers.s_id = fruits.s_id

对表名简写别名 再进行连接查询

select s1.s_id,s_name,f_name,f_price

from suppliers as s1 ,fruits

where s1.s_id = fruits.s_id

外连接

左连接(返回左表所有数据和右表连接字段相等的数据)

右连接(返回右表所有数据和左表连接字段相等的数据)

left join on(左连接):

select customers.c_id,orders.o_nums

from customers left outer join orders

on customers.c_id = orders.c_id

right join on(右连接):

select customers.c_id ,orders.o_nums

from customers right outer join orders

on customers.c_id = orders.c_id

合并查询

select s_id ,f_name,f_price

from fruits

where f_price < 9.0

union all

select s_id,f_name,f_price

from fruits

where s_id in(101,103)

分别给表和字段取别名进行查询

select f1.f_name as fruit_name,f1.f_price as fruit_price

from fruits as f1

where f1.f_price >1

正则表达式查询

    


插入 更新 删除数据

插入(写法1)

insert into person(name,age,info)

values(

'Willam','20','sport man'

)

插入(写法2)

insert into person

values(

'Willam','20','sport man'

)

插入多条

insert into person

values(

'Willam','20','sport man'

),(

'Willam','20','sport man'

),(

'Willam','20','sport man'

),(

'Willam','20','sport man'

)

将查询数据插入到表中

insert into person(id,name,age,info)

select id,name,age,info

from person_old

更新数据

update person

set id='7' ,name='zzs',age='23',info='boss'

where id=1
update person

set info='student '

where age between 19 and 22

删除数据

delete from person

where id = '2'

 觉得有用的朋友点个赞,加个关注哦

猜你喜欢

转载自blog.csdn.net/zhangzeshan/article/details/84652743
今日推荐