sql 语句-初级进阶(一)
以下所有的sql语句是根据个人资料进行操作,为方便大家操作联系,附上链接::
链接:https://pan.baidu.com/s/14LmWyhJPQRzpjURQBKM4mA 提取码:wu1q
文件为.iso文件,直接挂光盘方式,然后操作导入数据库即可
- create table list1 (id int,name nvarchar(20)) //创建一个列表并且生成了两列
- insert into list1 values(1,'xxx'),(2,'bbb') //插入行
- update list1 set pwd='123' //修改pwd列的所有行
- delete from list1 where name='sss' //删除sss行
- create table list1 (id int,name nvarchar(20)) //创建一个列表并且生成了两列
- insert into list1 values(1,'xxx'),(2,'bbb')//插入行
- update list1 set pwd='123' //修改pwd列的所有行
- delete from list1 where name='sss' //删除sss行
- declare @i int=1; //定义一个变量名字为“i”,类型为“int”,初始值为“1”
while(@i<=(select count(*) from list)) //目的是随机更改“sal”列的数值;当i小于等于行数时循环一直执行
begin
update list set sal=4000+(age-20)*200+floor(rand()*10000) where id=@i; //循环一次则更改一次“sal”的值
set @i=@i+1;
end
select指令
- select name from sysobjects where type='u' //查看当前数据库中都有哪些表
- select * from list //查看“list”表中所有数据
- select COUNT(*) from list //查看“list”表中所有数据一共有多少行
- select name,age from list //只是查看“list”表中“name,age”两列
- select name as 姓名,age as 年龄 from list //查看输出时,将“name”字段更换为“姓名”
- select top 5 * from list //显示最靠前的5行
- select * from list order by age desc //按“age”这列进行排序,加desc就是倒序,不加则为正
- select * from list where age = 20 //输出“age”数字等于“20”的(<;>)
- select * from list where age < 20 or age > 60 order by 3 //“age”小于20,或者“age”大于60的,并且以第3列作为排序基准
- select * from list where age not between 20 and 60 order by 3 //查看"age"值不在20-60之间的
- select distinct job from list //查看“job”列,“distinct”表示去掉重复
- select * from list where job='会计部' or job='教师部' order by 4 //查看会计部和教师部的 == select * from list where job in('会计部','教师部') order by 4
- select * from list where name like '张%' //"like"表示模糊查找,"%"表示通配,"_"一个下划线表示一位
- select * from list where name like '[李王张刘陈黄吴赵杨]%' order by 2 desc //查看以这些字符开头的
- select * from list where name not like '[李王张刘陈黄吴赵杨]%' order by 2 desc //查看除了这些字符开头之外的
- select * from list where name like '[^李王张刘陈黄吴赵杨]%' order by 2 desc //同上
- select * into list2 from list1 //将list1复制叫list2
- select count(sal) from list //查看“sal”行数;值为“null”时,不计入计算
- select count(distinct job) from list1 //去重复,并且计数
- select floor(rand()*10000) //出一个随机数,rand()时系统自带随机数,值为"0-1",乘以10000表示随机出现一个0-10000数字
- 4000+(age-20)*200+floor(rand()*10000) //4000加上age的值减去20乘以200;加上一个不超过10000的随机数
- select COUNT(*) as 人数,max(sal) as 最高,min(sal) as 最低,round(avg(sal),2) as 平均,sum(sal) as 总和 from list //max表示取该列最大数值,min表示最小,avg表示平均数,round(avg(sal),2)表示取平均数并且小数保留2位,sum表示总和
- select job as 部门,count(*) as 人数 from list where sal>=10000 group by job having count(*)>=10 //查看时,"部门"代替"job"字符,"count(*)"的值临时用"人数"代替,查看"sal"列值大于10000的,使用"group by"根据"job"进行分组,并且count(*)大于等于10个,即:查看薪资超过10000的员工的部门,并且人数在10个以上,进行查看;"having …" 语法是限制输出,在这里即使人数超过10个以上的输出
- select job as 部门,count(*) as 人数 into list2 from list where sal>=9000 group by job having count(*)>=9//“into list2”语法是将输出结果重定向到名为“list2”表中
alter语句
- EXEC sp_rename ‘表名.[原有列名]’, ‘新列名' , 'COLUMN' //修改列名
- alter table list1 drop column id //删除id列
- alter table list1 drop column id //删除id列
- alter table list add sal money //在list表中添加一列名为“sal”,数值类型“money”
- alter table ta2 drop CK__ta2__salary__267ABA7A //删除约束规则,图形化可以操作简单,我现在有疑惑的是,要知道约束的名称才可以删除,最后面的字符即为约束名称。
sql 语句-初级进阶(一)的更多相关文章
- sql 语句-初级进阶(二)
1.insert插入数据时注意事项: 每次插入一整行,不能半行或者是几列数据. 值与列数必须相同,包括数据类型也必须匹配. 不能为标识列指定值(就是最前面的那一序号列),它是自动增长的 列的数据类型为 ...
- 2019.3.26 SQL语句(进阶3)
表的联查 员工表与部门表 员工表:id,姓名,年龄,部门id 部门表:部门id,部门名,部门成立时间,部门领导,部门职责.... 表和表之间的关系 一对一 一对多 多对多 创建联查 创建表 先创建被依 ...
- SQL语句练习(进阶版)
学生数据库中有三个基本表(关系)如下: 学生表S(Sno,Sname,Age,Sex,SD) 课程表C(Cno,Cname, Teacher) 选课表SC(Sno,Cno,Grade) 请用SQL语言 ...
- SQL查询语句的进阶使用
MySQL的进阶使用 sql语句一些功能的使用 导入现有大量数据文件步骤 1) 把*.sql文件拷贝到Linux某一位置(例如Desktop) 2) Linux命令行进入该位置 cd ~/Deskto ...
- 能写数据后台,需要掌握哪些进阶的sql语句?
国庆假期花了一些时间,首次尝试并玩转 grafana,这几天继续不断优化和完善,如今看着自己的成果,相当满意.--逐步接近我想要的理想后台啦. 需求是不停歇的.今天我又给自己发掘了一些新需求,比如变量 ...
- MySQL高级(进阶)SQL语句
MySQL高级(进阶)SQL语句 目录 MySQL高级(进阶)SQL语句 一.实例准备--制表 1. 表1(商店区域表) 2. 表2(商店销售表) 3. 表3(城市表) 4. 表4(total_sal ...
- mysql进阶(十九)SQL语句如何精准查找某一时间段的数据
SQL语句如何精准查找某一时间段的数据 在项目开发过程中,自己需要查询出一定时间段内的交易.故需要在sql查询语句中加入日期时间要素,sql语句如何实现? SELECT * FROM lmapp.lm ...
- 使用flask+SQL语句实现通过前台收到的信息向数据库中插入事件+初级CSS+HTML拯救一下我的主页·····
1.使用flask+SQL语句实现**#@&&(懒得再扣一遍题目) 上代码: @app.route('/register', methods=['POST', 'GET']) def ...
- sql语句进阶教程
转载自:http://blog.csdn.net/u011001084/article/details/51318434 最近从图书馆借了本介绍SQL的书,打算复习一下基本语法,记录一下笔记,整理一下 ...
随机推荐
- 经典中的品味:第一章 C++的Hello,World!
摘要: 原创出处: http://www.cnblogs.com/Alandre/ 泥沙砖瓦浆木匠 希望转载,保留摘要,谢谢! "程序设计要通过编写程序的实践来学习"-Brian ...
- 函数式编程之-F#类型系统
在深入到函数式编程思想之前,了解函数式独有的类型是非常有必要的.函数式类型跟OO语言中的数据结构截然不同,这也导致使用函数式编程语言来解决问题的思路跟OO的思路有明显的区别. 什么是类型?类型在编程语 ...
- Dijkstra——单源最短路径
算法思想 ①从一个源点开始,找距离它最近的点顶点v ②然后以顶点v为起点,去找v能到达的顶点w,即v的邻居 比较源点直接到 v的距离和(源点到v的距离+v到w的距离) 若大于后者则更新源点的到w的开销 ...
- SpringBoot之Swagger2的使用
Swagger是一组围绕OpenAPI规范构建的开源工具,可帮助设计.构建.记录和使用REST API.简单说下,它的出现就是为了方便进行测试后台的restful形式的接口,实现动态的更新,当我们在后 ...
- React Fiber源码分析 第三篇(异步状态)
先附上流程图~ 调用setState时, 会调用classComponentUpdater的enqueueSetState方法, 同时将新的state作为payload参数传进 enqueueSetS ...
- L1与L2损失函数和正则化的区别
本文翻译自文章:Differences between L1 and L2 as Loss Function and Regularization,如有翻译不当之处,欢迎拍砖,谢谢~ 在机器学习实 ...
- C#比较两个对象是否为同一个对象。
两个对象是否为同一个对象:是看两个对象是否指向堆中的同一块内存. 1.使用object.ReferenceEquals() class Program { static void Main(strin ...
- Asp.net连接数据库的配置方法
1.Sqlserver数据库连接 <connectionStrings> <add name="Conn" connectionString="serv ...
- linux基本命令手册
常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) mkdir ...
- 从零开始学安全(二十五)●用nmap做端口扫描
以上是常用的端口扫描 -T 用法 每个级别发包时间 当没有使用T 时默认的使用T3级别发包 半开扫描 先探测主机是否存活 再用-sS 扫描端口 容易造成syn 包攻击 就是利用僵尸主机 进 ...