继续学习数据库

UPDate语句

1.可以同时更新多个表的语句:

update tabname a,tabname2 b set a.fideld1 =expr1,b.tabname2= expr2 where.....;

例如:

update kong a,emp1 b set a.name=66,b.ename =77 where ename =100;

tablename:emp1

+-------+------------+------+------+------+

| ename | hiredate   | sal  | name | age  |

+-------+------------+------+------+------+

| 3     | NULL       | NULL |   66 | NULL |

| 77    | NULL       | NULL |   66 | NULL |

| aa    | 2001-03-03 | NULL |   66 | NULL |

+-------+------------+------+------+------+

tablename:kong

+------+------+

| name | age  |

+------+------+

|   66 | NULL |

+------+------+



2.删除记录:

delete from tablename where

mysql> delete from emp1 where ename=77;

Query OK, 1 row affected (0.01 sec)


mysql> select*from emp1;

+-------+------------+------+

| ename | hiredate   | sal  |

+-------+------------+------+

| 3     | NULL       | NULL |

| aa    | 2001-03-03 | NULL |

+-------+------------+------+

2 rows in set (0.00 sec)

同时也可以删除多张表,在where后面用end 连接多个表的条件


3.查询记录select

(1)selcet* frome tablename 可以查询表的所有数据
(2)条件查询 select frome tablename where +需要查询的条件
4.排序
按照某个字段来排序 使用关键字 order by
select*from tablename [where ][order by+字段]

mysql> select*from emp1 order by ename;

+-------+------------+------+

| ename | hiredate   | sal  |

+-------+------------+------+

| 3     | NULL       | NULL |

| 44    | NULL       | NULL |

| 55    | NULL       | NULL |

| 66    | NULL       | NULL |

| aa    | 2001-03-03 | NULL |

+-------+------------+------+

5 rows in set (0.00 sec)

如果有并列数据,可以在增加其他的条件

mysql> select*from emp1 order by ename,hiredate desc;

+-------+------------+------+

| ename | hiredate   | sal  |

+-------+------------+------+

| NULL  | 2016-10-11 | NULL |

| 3     | NULL       | NULL |

| 3     | NULL       | NULL |

| 44    | NULL       | NULL |

| 55    | NULL       | NULL |

| 66    | NULL       | NULL |

| aa    | 2001-03-03 | NULL |

+-------+------------+------+

7 rows in set (0.00 sec)


mysql> 

如果只是希望显示一部分的数据可以使用LIMIT关键字

mysql> select*from emp1 order by ename limit 3;//显示了前三行的数据

+-------+------------+------+

| ename | hiredate   | sal  |

+-------+------------+------+

| NULL  | 2016-10-11 | NULL |

| 3     | NULL       | NULL |

| 3     | NULL       | NULL |

+-------+------------+------+

3 rows in set (0.00 sec)

如果想找行数之间的数据

mysql> select*from emp1 order by ename limit 2,4;

+-------+----------+------+

| ename | hiredate | sal  |

+-------+----------+------+

| 3     | NULL     | NULL |

| 44    | NULL     | NULL |

| 55    | NULL     | NULL |

| 66    | NULL     | NULL |

+-------+----------+------+


3.聚合操作
select[聚合函数]fun_name from tablename[where][group by][with rollup][having]

fun_name:要聚合的操作,聚合函数,sun count,max min 

group by 要进行聚合的字段

with rollup 是否对分类聚合后的结果在进行汇总

having 对分类后的结果在进行条件过滤

mysql> select count(1) from emp1;//统计empty 表中有多少的数据

+----------+

| count(1) |

+----------+

|        7 |

+----------+


mysql> select ename,count(1) from emp1 group by ename;//统计ename 的个个数据数量

+-------+----------+

| ename | count(1) |

+-------+----------+

| NULL  |        1 |

| 3     |        2 |

| 44    |        1 |

| 55    |        1 |

| 66    |        1 |

| aa    |        1 |

+-------+----------+


mysql> select ename,count(1) from emp1 group by ename with rollup;//统计之后在次汇总

+-------+----------+

| ename | count(1) |

+-------+----------+

| NULL  |        1 |

| 3     |        2 |

| 44    |        1 |

| 55    |        1 |

| 66    |        1 |

| aa    |        1 |

| NULL  |        7 |

+-------+----------+


也可以按条件查找

mysql> select ename,count(1) from emp1 group by ename having count(1)>1;//ename 中 3出现的次数是大于1的;

+-------+----------+

| ename | count(1) |

+-------+----------+

| 3     |        2 |

+-------+----------+



4.表链接

mysql> select*from kong;

+------+------+

| name | age  |

+------+------+

|   66 | NULL |

|   11 |   22 |

|   66 |   88 |

+------+------+

mysql> select*from emp1;

+-------+------------+------+

| ename | hiredate   | sal  |

+-------+------------+------+

| 3     | NULL       | NULL |

| aa    | 2001-03-03 | NULL |

| 44    | NULL       | NULL |

| 55    | NULL       | NULL |

| 66    | NULL       | NULL |

| 3     | NULL       | NULL |

| NULL  | 2016-10-11 | NULL |

+-------+------------+------+

内链

select name,ename from kong,emp1 where kong.name = emp1.ename;//将两个不同的表,相互匹配

+------+-------+

| name | ename |

+------+-------+

|   66 | 66    |

|   66 | 66    |

+------+-------+

//外链:左链接和有链接

mysql> select ename,name from emp1 left join kong on emp1.ename=kong.name;//列出两个表全部的对应关系没有的会用Null


+-------+------+

| ename | name |

+-------+------+

| 66    |   66 |

| 66    |   66 |

| 3     | NULL |

| aa    | NULL |

| 44    | NULL |

| 55    | NULL |

| 3     | NULL |

| NULL  | NULL |

+-------+------+

//子查询:查找出一个表中的另一个表的记录
 子查询的关键字:in,not in,exists,not exist, =,!= ,等等

mysql> select*from emp1 where ename in(select name from kong);

+-------+----------+------+

| ename | hiredate | sal  |

+-------+----------+------+

| 66    | NULL     | NULL |

+-------+----------+------+





















  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 内容概要 《计算机试卷1》是一份综合性的计算机基础和应用测试卷,涵盖了计算机硬件、软件、操作系统、网络、多媒体技术等多个领域的知识点。试卷包括单选题和操作应用两大类,单选题部分测试学生对计算机基础知识的掌握,操作应用部分则评估学生对计算机应用软件的实际操作能力。 ### 适用人群 本试卷适用于: - 计算机专业或信息技术相关专业的学生,用于课程学习或考试复习。 - 准备计算机等级考试或职业资格认证的人士,作为实战演练材料。 - 对计算机操作有兴趣的自学者,用于提升个人计算机应用技能。 - 计算机基础教育工作者,作为教学资源或出题参考。 ### 使用场景及目标 1. **学习评估**:作为学校或教育机构对学生计算机基础知识和应用技能的评估工具。 2. **自学测试**:供个人自学者检验自己对计算机知识的掌握程度和操作熟练度。 3. **职业发展**:帮助职场人士通过实际操作练习,提升计算机应用能力,增强工作竞争力。 4. **教学资源**:教师可以用于课堂教学,作为教学内容的补充或学生的课后练习。 5. **竞赛准备**:适合准备计算机相关竞赛的学生,作为强化训练和技能检测的材料。 试卷的目标是通过系统性的题目设计,帮助学生全面复习和巩固计算机基础知识,同时通过实际操作题目,提高学生解决实际问题的能力。通过本试卷的学习与练习,学生将能够更加深入地理解计算机的工作原理,掌握常用软件的使用方法,为未来的学术或职业生涯打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值