SQL多表查询

SELECT column, another_column, …
FROM mytable
INNER/LEFT/RIGHT/FULL JOIN another_table
    ON mytable.id = another_table.matching_id
WHERE condition(s)
ORDER BY column, … ASC/DESC
LIMIT num_limit OFFSET num_offset;
SELECT *  
FROM movies as a 
inner join boxoffice as b 
on a.id = b.movie_id 
where domestic_sales < international_sales
SELECT director,international_sales 
FROM movies as a 
inner join boxoffice as b 
on a.id = b.movie_id 
order by international_sales desc
limit 1
SELECT building_name FROM buildings
left join employees on buildings.building_name = employees.building
where name is  null
SELECT id,title,(international_sales+domestic_sales)/ 1000000 as total 
FROM movies
left join boxoffice on movies.id=boxoffice.movie_id

取余 %

SELECT id,title,year  
FROM movies
where year % 2 = 0
SELECT title,(domestic_sales+international_sales)/length_minutes as value 
FROM movies as a
left join boxoffice as b on a.id=b.movie_id
where director='John Lasseter'
order by value desc
limit 3

group by语句——分组统计

SELECT AGG_FUNC(column_or_expression) AS aggregate_description, …
FROM mytable
WHERE constraint_expression
GROUP BY column
select role,avg(years_employed) as a
from employees
group by role

Having语句

对分组之后的数据再做SELECT筛选

SELECT group_by_column, AGG_FUNC(column_expression) AS aggregate_result_alias, …
FROM mytable
WHERE condition
GROUP BY column
HAVING group_condition;
SELECT count(name) as num 
FROM employees
group by role 
having role = 'Artist'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值