SQL基础操作:创建、备份与表结构管理

需积分: 3 2 下载量 58 浏览量 更新于2024-07-28 收藏 83KB DOC 举报
本文档主要介绍了经典SQL语句的基础知识,包括数据库管理和表操作。首先,我们了解到如何在SQL中进行基础操作,如创建数据库(CREATE DATABASE)和删除数据库(DROP DATABASE),这对于数据库设计和维护至关重要。对于SQL Server,还提及了备份数据库的过程,通过`sp_addumpdevice`创建备份设备,并使用BACKUP DATABASE语句实际执行备份。 创建新表是数据结构管理的核心部分,文档提供了两种方式:一是`CREATE TABLE tab_new LIKE tab_old`,这用于复制现有表的结构;二是`CREATE TABLE tab_new AS SELECT ... FROM tab_old`,这种方式不仅复制结构,还会包含数据。删除新表(DROP TABLE)则是确保数据整洁时的操作。 接下来,我们讨论了对表结构的修改,例如添加列(ALTER TABLE ADD COLUMN)和修改主键(ALTER TABLE ADD PRIMARY KEY/DROP PRIMARY KEY)。值得注意的是,主键一旦添加,无法删除或更改数据类型,而在DB2中,列的增删或数据类型变更更为严格。索引的管理也十分重要,包括创建(CREATE INDEX)、删除(DROP INDEX),以及它们的不可变性,即一旦创建,就不能直接修改,需要通过删除重建。 最后,文档列举了一些基本的SQL语句,如查询(SELECT)、插入(INSERT)、删除(DELETE)、更新(UPDATE)和查找(SELECT)。这些操作是日常数据分析和数据库操作的基石,熟练掌握它们可以极大地提高工作效率。 学习这些SQL语句时,理解其背后的逻辑和最佳实践是关键,同时要注意不同数据库系统可能有差异,确保在实际应用中灵活运用并符合具体数据库管理系统的要求。通过不断实践和熟悉这些命令,可以逐步提升SQL编程技能。
2019-09-21 上传
1.查看有哪些数据库 2.新建数据库 3.使用数据库(在我们的密令行中要先使用数据库 才能进行相应的建表 查询等操作) 4.创建一个数据库表 create table 表名 ( id 类型 约束 , 列名 类型 约束 , 列名 类型 约束 ) 5.查看数据库表 6.查看数据库表结构 7.添加数据 A . insert into 表名 (列名1,列名2.。。。) values (值1,值2。。。) 注意:1 id 是主键自增的 所以我们添加的时候 不去管id 因为它会自动增加 2 在添加的时候 有多少列 就要有多少个值 3 并且类型要匹配 B. 注意 :1 没有添加列名 代表所有列都添加数据 (id,name , age) 所以我们的值 也需要 3个 (null,’zhangsan’,18) 2 因为id是自增 所以我们第一个值写 null C. 8.查询表中所有的数据 SELECT * FROM 表名; Where 条件 9.条件删除 delete from 表名 where 条件; 10.修改 Update 表名 set 列 = 值 ,列=值 where 条件 11.删除table 12.删除数据库 二.查询语句 13.查询语句 Select 列名 from 表名 查询出的结果 称之为 临时表 我们可以订制临时表有那些列 14.查询的时候 可以给 表 或者 列 起别名 Select 列名1 [as] 别名 , 列名2 [as] 别名2 from 表名 别名 15.去重查询 16.条件查询 练习1 年龄大于 25的学生 > < >= <= != <> = 17.多条件查询 & and || or 18.条件查询 (模糊搜索) like %零个或多个 _匹配一个 19.排序 order by 列名 注意 如果只写列名 代表 升序。 升序 asc 降序 desc 如果需要多列排序,可以指定第二排序原则 三.聚合函数 20.Count 查询有多少条数据 21.Max 查询某一列最大值 22.Min 查询某一列最小值 23.Avg 查询某一列的平均值 24.Sum 查询某一列的总和 25.分组查询 group by 列 26.分组条件查询 having 查询平均年龄大于25以上的班级和班级平局年龄 27.数据库分页语句 limit limit (索引,长度) 28.多表查询 Select 列名 from 表名1,表名2 29.笛卡尔乘积 (A,B) (c,d) => Ac Ad Bc Bd 30.内连接查询 A.隐式内连接 B.显示内连接 inner join on Select 列名 from 表 inner join 表1 on 条件 31.外连接查询 左外链接 需求:查询所有学生 如果有班级的 显示班级。 此时我们再去用内连接进行查询 那么 新学生查询不出来 所以我们需要用到外连接 left join on 左外链接 就是 左边表的数据全部查询 右边表符合条件的查询出来 右外链接 32.子查询 注意 子查询的结果 一定要和 另一个查询条件匹配