sql order by,limit union handler 子句

mysql> select 姓名,课程名,专业名,成绩
    -> from xs
    -> join xs_kc
    -> using (学号)
    -> join kc
    -> using (课程号)
    -> where 专业名 ='通信工程'
    -> order by 成绩 desc;
+--------+----------------+----------+------+
| 姓名       | 课程名              | 专业名       | 成绩    |
+--------+----------------+----------+------+
| 马琳琳       | 计算机网络               | 通信工程       |   89 |
| 严红      | 数据结构             | 通信工程       |   88 |
| 严红      | 计算机基础               | 通信工程       |   85 |
| 王林       | 程序设计与语言               | 通信工程       |   78 |
| 王敏       | 计算机基础               | 通信工程       |   76 |
| 马琳琳       | 软件工程               | 通信工程       |   70 |
| 严红      | 计算机网络               | 通信工程       |   68 |
| 严红      | 软件工程               | 通信工程       |   60 |
+--------+----------------+----------+------+
8 rows in set (0.00 sec)

mysql> select 编号, 姓名, 出生日期, timestampdiff(year, 出生日期, curdate()) as 年龄
    -> from employees
    -> order by 年龄 desc
    -> limit 1;
+--------+------+------------+------+
| 编号       | 姓名     | 出生日期           | 年龄     |
+--------+------+------------+------+
| 020018 | 李丽     | 1960-07-30 |   63 |
+--------+------+------------+------+
1 row in set (0.00 sec)


mysql> select *from employees
    -> order by 出生日期 asc
    -> limit 5;
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
| 编号       | 姓名       | 学历    | 出生日期           | 性别    | 工作时间        | 住址              | 电话       | 部门号      |
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
| 020018 | 李丽       | 大专    | 1960-07-30 |    0 |        6 | 中山东路102-2         | 83413301 | 1      |
| 102208 | 朱俊     | 硕士   | 1965-09-28 |    1 |        2 | 牌楼巷5-3-106        | 64895568 | 5      |
| 000001 | 王林       | 大专    | 1966-01-23 |    1 |        8 | 中山路32*-1-508     | 83355668 | 2      |
| 302566 | 李玉珉       | 本科     | 1968-09-20 |    1 |        3 | 热和路209-3         | 58765991 | 4      |
| 504209 | 陈林琳       | 大专    | 1969-09-03 |    0 |        5 | 汉中路120-4-12       | 34445656 | 4      |
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
5 rows in set (0.00 sec)


mysql> select *from employees
    -> order by 出生日期 desc
    -> limit 5;
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
| 编号       | 姓名       | 学历    | 出生日期           | 性别    | 工作时间        | 住址              | 电话       | 部门号      |
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
| 020010 | 王向容       | 硕士   | 1982-12-09 |    1 |        2 | 四牌楼 10-0-108      | 53792361 | 1      |
| 108991 | 钟敏       | 硕士   | 1979-08-10 |    0 |        4 | 中山路10-3-105      | 83346454 | 3      |
| 308759 | 叶凡      | 本科     | 1978-11-18 |    1 |        2 | 北京西路3-7-52         | 83364644 | 4      |
| 010008 | 伍容华      | 本科     | 1976-03-28 |    1 |        3 | 北京东路100-2          | 83321231 | 1      |
| 111006 | 张石兵      | 本科     | 1974-10-01 |    1 |        1 | 解放军34-1-203       | 33358777 | 5      |
+--------+--------+------+------------+------+----------+-----------------+----------+--------+
5 rows in set (0.00 sec)

mysql> handler xs_kc open;
Query OK, 0 rows affected (0.00 sec)

mysql> handler xs_kc read first
    -> where 成绩 >=90;
+--------+--------+------+------+
| 学号      | 课程号     | 成绩    | 学分    |
+--------+--------+------+------+
| 081102 | 101    |   91 |    5 |
+--------+--------+------+------+
1 row in set (0.00 sec)

mysql> handler xs_kc read next;
+--------+--------+------+------+
| 学号      | 课程号     | 成绩    | 学分    |
+--------+--------+------+------+
| 081102 | 301    |   80 |    4 |
+--------+--------+------+------+
1 row in set (0.00 sec)

mysql> handler xs_kc close;
Query OK, 0 rows affected (0.00 sec)

mysql>  SELECT 学号 AS 编号,
    ->         姓名,
    ->         出生日期,
    ->         CASE
    ->            WHEN 性别 IS NOT NULL THEN
    ->                 CASE
    ->                    WHEN 'xscj.xs' = 'xscj.xs' THEN '学生'
    ->                    ELSE '员工'
    ->                 END
    ->            ELSE '未知'
    ->        END AS 来自
    ->  FROM xscj.xs
    ->  UNION ALL
    ->  SELECT 编号,
    ->        姓名,
    ->          出生日期,
    ->        CASE
    ->             WHEN 性别 IS NOT NULL THEN
    ->                 CASE
    ->      WHEN 'yggl.employees' = 'yggl.employees' THEN '员工'                    ELSE '学生'
    ->                  END
    ->              ELSE '未知'
    ->         END AS 来自
    ->  FROM yggl.employees
    -> ;
+--------+--------+------------+------+
| 编号       | 姓名       | 出生日期           | 来自     |
+--------+--------+------------+------+
| 081101 | 王林       | 1994-02-10 | 学生    |
| 081102 | 程明       | 1995-02-01 | 学生    |
| 081103 | 王燕       | 1993-10-06 | 学生    |
| 081104 | 韦平平    | 1994-08-26 | 学生    |
| 081201 | 王敏       | 1993-06-10 | 学生    |
| 081202 | 王林       | 1993-01-29 | 学生    |
| 081203 | 严红      | 1993-08-11 | 学生    |
| 081204 | 马琳琳       | 1993-01-29 | 学生    |
| 081301 | 李计       | 1993-09-20 | 学生    |
| 081302 | 李红庆       | 1993-05-01 | 学生    |
| 081303 | 孙祥欣       | 1993-03-09 | 学生    |
| 081304 | 孙研       | 1994-10-09 | 学生    |
| 000001 | 王林       | 1966-01-23 | 员工    |
| 010008 | 伍容华      | 1976-03-28 | 员工    |
| 020010 | 王向容       | 1982-12-09 | 员工    |
| 020018 | 李丽       | 1960-07-30 | 员工    |
| 102201 | 刘明       | 1972-10-18 | 员工    |
| 102208 | 朱俊     | 1965-09-28 | 员工    |
| 102345 | 朱慧名       | 1973-12-03 | 员工    |
| 108991 | 钟敏       | 1979-08-10 | 员工    |
| 111006 | 张石兵      | 1974-10-01 | 员工    |
| 210678 | 林涛       | 1972-10-18 | 员工    |
| 302566 | 李玉珉       | 1968-09-20 | 员工    |
| 308759 | 叶凡      | 1978-11-18 | 员工    |
| 504209 | 陈林琳       | 1969-09-03 | 员工    |
+--------+--------+------------+------+
25 rows in set (0.00 sec)

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值