SQL学习 小知识点(一)
这是我在做实验的时候总结的,随着学习可能会做更多的小总结
ssms上面把所有代码写下来后一块执行是行不通的(极大可能会报错),推测可能是因为ssms先对代码的语法进行了检查。 ——My experience
alter命令修改column属性为not null
alter table table_name
alter column column_name column_type NOT NULL;
alter命令向表中添加column
alter table table_name
add column_name column_type(max);
alter修改column为primary key
alter table table_name add constraint (外)键名 primary key (column_name);
alter修改column为foreign key
这个就和上面的修改为主键的命令类似了
alter table table_name
add constraint 键名 foreign key (column_name) references 参照表名(column_name);
alter删除列
alter table 表名 drop column 列名;
sqlserver重命名表名
EXEC sp_rename 原表名, 新表名;
sqlserver重命名列名
exec sp_rename 'tablename.ColumnName', 'NewColumnName', 'column'
例如:
EXEC sp_rename 'employ.term', 'term(天)', 'column';
添加具有唯一性的列
ALTER TABLE table_name
ADD column_name type(max) UNIQUE(column_name);
修改列使其具有唯一性
ALTER TABLE table_name
ADD CONSTRAINT 约束名 UNIQUE (column_name,column_name);
删除表中某行(delete & where)
delete from table_name
where a_column_name = column_name_value;
update基础更新
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
select基础查询
select 想回显列值的列名 from 表名
where 限制条件(如:age >= 18);
下面的内容就比较深了,不过也不算太难,众所周知,sql的最关键功能就是查询数据了,下面是关于查询的一些内容,有时间的话,我或许会抽出时间,写一篇质量更高的SQL查询语句总结。
1.做到的题目
select employ.mid,motorcade.mname,avg(driver.dage) '平均年龄' from driver,employ,motorcade
where driver.did = employ.did and motorcade.mid = employ.mid
group by employ.mid,motorcade.mname
这里涉及了,聚集函数,group by分组,连接查询,数据筛选。
平均年龄:列的别名,聚集函数新生成的列初始时没有列名,这种方式给他加上列名。
from后的两个表:进行连接查询的两的数据表
where语句:对连接查询的数据进行了筛选,
原因:
因为连接查询会对数据进行无脑组合,就是如果两个表进行连接查询,第一个表有4行.第二个
表有5行的话,那么连接后的表就有4 x 5 = 20行,而真正正确的只有满足where后条件的数据
,就是主键与外键的数据相等的是合理的数据(即可以分到一行的数据)。
表名.列名:似乎是列的更精准定位,可能是为了区分各表之间有相同的列名的情况。
--+哈哈,知识点还挺多的哈。
2.今天做到的另一个题目
select vid,penaltyScore from usage
group by vid,penaltyScore
having sum(penaltyScore) >= 12;
这里的这个having关键字是和group by 关键字相搭配的,有having就一定有group by,但是有group by不一定有having。having限定的是一个或者可以多个的含有聚集函数的条件。
SQL学习 小知识点(一)的更多相关文章
- SQL 学习小笔记
1.FOUND_ROWS() 题目: ,; 在上边sql中使用什么选项可以使 SELECT FOUND_ROWS()忽略LIMIT子句,返回总数? *答案* : SQL_CALC_FOUND_ROWS ...
- oracle学习小知识点总结
登陆数据库:sqlplus "/as sysdba" window身份验证,不需要用户名和密码. 查看数据库状态: select status from v$instance(v$ ...
- 刚接触Linux,菜鸟必备的小知识点(一)
身为一个将要大四的学生,而且还是学计算机的没有接触过linux简直是羞愧难当.这个假期做了一个软件测试员,必须要熟悉linux的操作,所以对于我这个菜鸟我也就说几点比较重要的小知识点吧. 第一.cd指 ...
- js中关于value的一个小知识点(value既是属性也是变量)
今天在学习input的value值时,发现这么一个小知识点,以前理解不太透彻. [1]以下这种情况是常见情况,会弹出“测试内容” <input type="button" v ...
- TERADATA SQL学习随笔<一>
此博客内容简介及目录 http://www.cnblogs.com/weibaar/p/6644261.html 最近在TERADATA环境学习SQL.在这里记录一下学习中查过的知识点,作为备案. 目 ...
- 深入了解webpack前,可以了解的小知识点。
阅读前:文章大概是写,简单用过webpack,想继续深入了解webpack前需要了解的知识.但文章内容跟webpack使用关系并不大. 文章概要: Object.defineProperty call ...
- C#、Java中的一些小知识点总结(持续更新......)
前言:在项目中,有时候一些小的知识,总是容易让人忽略,但是这些功能加在项目中往往十分的有用,因此笔者在这里总结项目中遇到的一些实用的小知识点,以备用,并持续更新...... 1.禁用DataGridV ...
- javascript中关于value的一个小知识点(value既是属性也是变量)
今天在学习input的value值时,发现这么一个小知识点,以前理解不太透彻 [1]以下这种情况是常见情况,会弹出“测试内容” <input type="button" va ...
- Python全栈学习_day002知识点
今日大纲: . while循环 . 格式化输出 . 运算符 . 编码初识 1. while循环 - while 无限循环: while True: # 死循环 print('大悲咒') print(' ...
随机推荐
- 11_IO多路复用
1.IO概述 input 和 output: 是在内存中存在的数据交换操作 内存和磁盘交换: 文件读写, 打印 内存和网络交换: recv send recvfrom, sendto IO密集型程序: ...
- Linux centos6.5 安装
本来打算玩 netty的 但是这个东西暂时也不用,而且我之前玩过mina就暂时不玩这个了,等以后有时间再玩,那玩啥呢?前几天和我们领导要了百度网盘会员,下了60G的大数据视屏,嘿嘿,有的玩了,今天开始 ...
- [业界方案] 用SOFATracer学习分布式追踪系统Opentracing
[业界方案] 用SOFATracer学习分布式追踪系统Opentracing 目录 [业界方案] 用SOFATracer学习分布式追踪系统Opentracing 0x00 摘要 0x01 缘由 &am ...
- Fabric1.4 架构和原理
#1.Fabric总体架构Fabric架构主要包括三个模块:会员(Membership),区块链(Blockchan)和链码(chaincode). 1.1成员服务 包含下列组件:注册.身份认证管理及 ...
- 网易云uwp
起因 昨天晚上折腾Ubuntu 莫名其妙任务栏的网易云音乐图标消失了,今早才发现原来是更新了. but,这个更新真的是让人一言难尽 upw更新一下直接变成了桌面版? 折腾 重新装回老版uwp 网易云U ...
- redis加固:修改默认端口6379、密码不为空、内网服务器访问
一.windows下redis加固: 1.修改redis密码+修改redis端口 1.1.找到服务当中redis的属性配置文件是哪个 这个是我的"D:\Program Files\Red ...
- linux系统的默认用户
1.可以通过cat /etc/passwd |cut -f1 -d: 可以提取/etc/passwd文件的第一个字段 2.也可以通过vipw进入vi编辑器来查看该文件每一行的第一个字段 linux ...
- get、post请求方式在postman中使用步骤
1.get请求方式:不需要借助任何工具,在浏览器里面就可以发送请求,直接在浏览器里面输入访问 url?参数名=参数值 url?parma=abc&name=abcd 2.post请 ...
- python操作从数据库中获取数据的接口
1.输入一个表名,获取表里面的数据 2.判断用户是否存在,如果不存在就添加到数据库里面
- python中的一些内置函数
1.布尔类型 2.求和sum 3.取全局变量和局部变量 4.ascii码和字符集 chr().ord() 5.看某个功能下有哪些方法 help(x).dir(x) 6.exec执行python代码 7 ...