贴一下SQL的笔记
来源:互联网 发布:小火箭翻墙软件 编辑:程序博客网 时间:2024/04/28 14:34
1、
CREATETABLE orders(price MONEY DEFAULT $38.00,
quantityINT DEFAULT 50,
entrydateDATETIME DEFAULT GETDATE())
缺省值为日期时间 defaultgetdate()
2、
清除表中的所有数据但不删除这个表,使用TRUNCATE TABLE语句
3、
ALTERTABLE mytable ADD mynewcolumn INT NULL
这个语句向表mytable中增加了一个新字段mynewcolumn。当你增加新字段时,你必须允许它接受空值
,因为表中原来可能已经有了许多记录。
4、
CREATECLUSTERED INDEX mycolumn_clust_index ONmytable(mycolumn)
clusteredindex 聚簇索引
index 非聚簇索引
CREATECLUSTERED INDEX mycolumn_cindex ONmytable(mycolumn)
WITHALLOW_DUP_ROW
这个语句建立了一个允许重复记录的聚簇索引。
CREATEUNIQUE COUSTERED INDEX myclumn_cindex ONmytable(mycolumn)
这是你将经常使用的索引建立语句。无论何时,只要可以,你应该尽量对一个对一个表建立唯一聚簇
索引来增强查询操作。
CREATEINDEX name_index ON username(firstname,lastname)
这个例子对两个字段建立了单个索引。在一个复合索引中,你最多可以对16个字段进行索引。
5、
select 是不选择重复项 用 DISTINCT
6、
函数
count()avg() sum() min() max()
7、
SELECTCONVERT(CHAR(8),price)+’US Dollars’ FROM orders
函数CONVERT()带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的
字段。在这个例子中,字段price被转换成长度为8个字符的CHAR型字段。字段price要被转换成字符型
,才可以在它后面连接上字符串’USDollars’。
8、
通配符
%多个字符
[a-z] 表示a-z之间的单个字符
[abc] 表示abc中的单个字符
[C-FY] 表示c-f之间或者y的单个字符
脱字符(^)来排除特定的字符
#_ 表示"_",#为转义符
9、范式
实体:现实世界中客观存在并可以被区别的事物。比如“一个学生”、“一本书”、“一门课”等等。值得强调的是这里所说的“事物”不仅仅是看得见摸得着的“东西”,它也可以是虚拟的,不如说“老师与学校的关系”。
属性:教科书上解释为:“实体所具有的某一特性”,由此可见,属性一开始是个逻辑概念,比如说,“性别”是“人”的一个属性。在关系数据库中,属性又是个物理概念,属性可以看作是“表的一
列”。
元组:表中的一行就是一个元组。
分量:元组的某个属性值。在一个关系数据库中,它是一个操作原子,即关系数据库在做任何操作的时候,属性是“不可分的”。否则就不是关系数据库了。
码:表中可以唯一确定一个元组的某个属性(或者属性组),如果这样的码有不止一个,那么大家都叫候选码,我们从候选码中挑一个出来做老大,它就叫主码。
全码:如果一个码包含了所有的属性,这个码就是全码。
主属性:一个属性只要在任何一个候选码中出现过,这个属性就是主属性。
非主属性:与上面相反,没有在任何候选码中出现过,这个属性就是非主属性。
外码:一个属性(或属性组),它不是码,但是它别的表的码,它就是外码。
第一范式(1NF):属性不可分。
第二范式(2NF):符合1NF,并且,非主属性完全依赖于码。
--找出码,然后所有非主属性都完全依赖于码。把部分依赖于码的关系独立出来一个表。
第三范式(3NF):符合2NF,并且,消除传递依赖
--把非主属性之间的依赖关系独立出来一个表。
BC范式(BCNF):符合3NF,并且,主属性不依赖于主属性,即只有一个码
10、
升序ASC 降序DESC
11、
前几行记录 TOPn
selecttop 3 * from testDB --选择前3行数据
12、
在SELECT语句中WHERE、GROUPBY、HAVING子句和统计函数的执行次序如下:WHERE子句从数据源中去
掉不符合
其搜索条件的数据行;GROUPBY 子句搜集数据行到各个组中;统计函数为各个组计算统计值;HAVING
子句去掉不符合共组搜索条件的各组数据行。
13、
内部链接 连接的结果是从两个或两个以上的表的组合中挑选出符合连接条件的数据,如果数据无法满足连接条件则将其丢弃。通常称这种方法为内部连接(InnerJoin)。在内部连接中,参与连接的表的地位是平等的。
select a.a1b.b1 from a join b on a.a2=b.b2
与内部连接相对的方式称为外部连接(OuterJoin)。在外部连接中,参与连接的表有主从之分,以主表的每行数据去匹配从表的数据列,符合连接条件的数据将直接返回到结果集中,对那些不符合连接条件的列,将被填上NULL 值后再返回到结果集中(对BIT 类型的列,由于BIT 数据类型不允许NULL 值,因此将会被填上0 值再返回到结果中)。
外部连接分为左外部连接(Left OuterJoin)和右外部连接(Right OuterJoin)两种。以主表所在的方向区分外部连接,主表在左边,则称为左外部连接,主表在右边,则称为右外部连接。
- 贴一下SQL的笔记
- 整理一下最近的笔记
- 各位SQL的朋友请进来一下
- 复习一下 SQL 的 SELECT 查询语句
- 测试一下自己的SQL水平
- SQL函数(整理的文档共享一下)
- 了解一下SQL注入攻击的原理
- 谈一下SQL数据库的修复方法
- 指点一下这两段sql的差别
- mysql--mark一下最近用的sql
- linq to sql 语法 学习笔记 存一下
- 记录一下看云的笔记
- 总结一下之前的学习笔记
- android gradle学习的新知识 笔记一下
- 某个课程设计时用到的SQL脚本,贴在这里供自己以后参考一下
- SQL 语句记录一下
- 找到一个sql车站的老题~~做了一下
- 哪位帮忙来看一下SQL创建PROCEDURE的问题
- RamDisk Plus充分利用你的内存
- VirtualBox四种网络连接模式比较
- 计算机网络随笔
- 传说中的windows 系统备份工具
- win2003VPN架设
- 贴一下SQL的笔记
- 德清也有雾霾了
- win2003远程桌面
- unrecognized selector sent to instance
- VPN链接与VPN网关
- 如何禁止VPN用户通过VPN通道上外网
- windows2003 安全策略
- windows改密码后,sql 2005 无法登陆
- 『转』轻松实现SQL Server异地备份