码迷,mamicode.com
首页 > 数据库 > 详细

SQL学习记录

时间:2016-02-29 00:51:44      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:sql基础学习笔记

1、表的某一列对于只接受特定的值来说,需要增加一个约束条件,

gender CHAR(1) CHECK (gender IN (‘M‘,‘F‘))

对于大多说数据库服务器中检查约束来说能够如期的工作,但对于MySQL来说,虽然定义了检查约束,但并不强制,实际上MySQL提供了另一种名为enum的字符数据类型,它可以将检查约束和数据定义融合在一起:gender ENUM(‘M‘,‘F‘);

2、ALERT TABLE person MODIFY person_id SMALLINT UNSIGNED AUTO_INCREMENT

修改person表的person_id 为自增;

3、获取XML格式的数据:

MySQL :登录时:MySQL -u root -p --xml 数据库名称

之后查询  Select * from 表名,出来的就是XML格式。

SQL Server  无需命令 只需在每个查询的末尾增加 for xml子句即可

4、SELECT VERSION(),USER(),DATABASE();

3个简单的内建函数,返回数据库的版本,当前用户,当前数据库名称

5、DISTINCT 产生无重复的的结果集是首先对数据排序的,这对于打的表来说是相当耗时的,因此不能为了去除重复的行而随意的使用distinct,而是应该先了解所使用的数据是否可能包含重复的行,以减少对distinct的不必要使用。

6、SQL如果带通配符的字符串仍然不能提供足够的灵活性,那么可以使用正则表达式。

查找姓名已F或者G开头的记录

MySQL :select * from emp where name REGEXP ‘^[FG]‘

Oracle使用的是regexp_like 而SQL Server则允许like操作符中使用正则表达式

本文出自 “努力中。。。” 博客,请务必保留此出处http://y645194203.blog.51cto.com/8599045/1745788

SQL学习记录

标签:sql基础学习笔记

原文地址:http://y645194203.blog.51cto.com/8599045/1745788

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!