mysql面试

(1)三种方法

select c.id,c.name,p.name from city as c inner join province as p on p.id=c.pid

select c.id,c.name,p.name from city as c join province as p on p.id=c.pid

select c.id,c.name,p.name from city as c,province as p where p.id=c.pid

select c.id,c.name,p.name from province as p left join city as c on p.id=c.pid

select c.id,c.name,p.name from city as c right join province as p on p.id=c.pid

考点:left join , right join join inner join

          left join 和right join 后面必须有on

          join和inner join 后面可以是on也可以是where

(2)select count(c.id),c.pid,p.name as pname from city as c join province as p on p.id=c.pid GROUP by c.pid

select count(c.pid),p.name from city as c join province as p where p.id=c.pid group by p.id order by pid

select p.pid,p2.name,p.c from (select count(id) as c,pid from city GROUP by pid) as p left join province as p2 on p2.id=p.pid order by p.c desc

考点:1 group by分组 和count统计函数的使用

2 sql查询每科成绩最高的人和分数

select s1.name,s1.class,s1.source from grade s1 join (select class,max(source) as source from grade group by class) as s2 on s1.class=s2.class and s1.source= s2.source

select g.class,g.name,tt.maxSource from grade as g inner join (select id,max(source) as maxSource from grade GROUP by class) as tt on g.source=tt.maxSource

考点:1 group by 和max等统计函数的使用

        2 left join 关联查询

注意点:后面on 一定是两个表的分数字段相等

思路:1 先用一个子查询,找出每科的最高分

        2 再用join 做关联查询

select c.name,

count(c.id) as cnum,u.sex from ms_chejiu as c inner join ms_user as u on u.id=c.uid group by c.name,u.sex order by cnum desc

select c.name,case when u.sex=1 then "男" else "女" end as xb,count(c.id) from ms_chejiu c join ms_user u on u.id=c.uid group by c.name,u.sex

考点:1 group by 分组,这里需要注意的是用了两个分组

2 count 统计函数

3 join 关联表

4 case end 分支结构

相关推荐

  1. MySQL面试

    2024-02-07 03:54:01       57 阅读
  2. mysql面试

    2024-02-07 03:54:01       33 阅读
  3. Mysql面试

    2024-02-07 03:54:01       33 阅读
  4. mysql面试

    2024-02-07 03:54:01       34 阅读
  5. MySQL面试题总结

    2024-02-07 03:54:01       64 阅读
  6. MySQL面试

    2024-02-07 03:54:01       58 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-07 03:54:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-07 03:54:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-07 03:54:01       82 阅读
  4. Python语言-面向对象

    2024-02-07 03:54:01       91 阅读

热门阅读

  1. 大模型: 流式会话的实现方式

    2024-02-07 03:54:01       56 阅读
  2. 【PHP】TP5.0模型关联搜索查询

    2024-02-07 03:54:01       46 阅读
  3. C++ access 的作用

    2024-02-07 03:54:01       49 阅读
  4. 综合分享2

    2024-02-07 03:54:01       48 阅读
  5. 【量子通信】量子通信技术:前景与挑战

    2024-02-07 03:54:01       50 阅读
  6. docker 部署springboot项目详细步骤

    2024-02-07 03:54:01       50 阅读
  7. C#基础-线程暂停方案之重置事件

    2024-02-07 03:54:01       51 阅读
  8. Python学习之路-Tornado基础:数据库

    2024-02-07 03:54:01       49 阅读
  9. 深入理解STM32 HAL库:简化嵌入式系统开发

    2024-02-07 03:54:01       50 阅读
  10. ubuntu20安装mysql8

    2024-02-07 03:54:01       46 阅读
  11. 01. k210-命令行环境搭建(ubuntu环境)

    2024-02-07 03:54:01       52 阅读