您的位置:首页 > 数据库 > MySQL

mysql 学习

2016-01-11 18:35 489 查看
创建数据库、

    create database <数据库名字>;

连接数据库

   use  <数据库名字>;

创建表、

  create table 表名



字段名  类型(长度),

);

数据类型

int 4, float 4, double 4,enum ,set  多选,date,time,year,char ,varchar,text

约束分类

约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性,唯一性。

约束类型:主键,默认值,唯一,外键,非空

关键字:PRIMARY KEY, DEFAULT ,UNIQUE ,FOREIGNKEY, NOT NULL

1.主键,是用来约束表中的一行,作为这一行的表示符,在一张表中通过主键就能准确定位到一行,主键不能重复不能为空。

 create table 表名



字段名  类型(长度)PRIMARY KEY,

);

2.默认值约束,当有DEFAULT约束的列,插入数据为空,使用默认值
3.唯一约束(UNIQUE),它规定一张表中指定的一列的值必须不能有重复,即这一列每个值都是唯一的。

4.外键约束(FOREIGN KEY)既能确保数据完整性,也能表现表之间的关系。

一个表可以有多个外键,每个外键必须REFERENCES(参考)另一个表的主键,被外键约束的列,

取值必须在它参考的列中有对应值。

5.非空约束

在插入值时必须非空

基本的SELECT语句

SELECT
要查询的列名 FROM
表名字 WHERE
限制条件;

WHERE限制条件可以有数学符号 (=,<,>,>=,<=)


WHERE后面可以有不止一条限制,而根据条件之间的逻辑关系,可以用OR(或)和AND(且)连接:

IN和NOT IN

关键词IN和NOT
IN的作用和它们的名字一样明显,用于筛选“在”或“不在”某个范围内的结果,

SELECT * FROM employee WHERE a IN(12);

通配符

关键字 LIKE 在SQL语句中和通配符一起使用,通配符代表未知字符。SQL中的通配符是
_ 和 % 。

其中 _ 代表一个未指定字符,% 代表不定个未指定字符。

SELECT
name,age,phone FROM
employee WHERE
phone LIKE
'1101__';

对结果排序

为了使查询结果看起来更顺眼,我们可能需要对结果按某一列来排序,这就要用到 ORDER
BY 排序关键词。默认情况下,

ORDER
BY的结果是升序排列,而使用关键词ASC和DESC可指定升序或降序排序。

SELECT
name,age,salary,phone FROM
employee ORDER
BY
salary DESC;

SELECT
*FROM employee   ORDER BY a ASC;

SQL内置函数和计算

函数:COUNT
   SUM    AVG    MAX   MIN

作用:计数,求和,
 求平均值, 最大值, 最小值

有一个细节你或许注意到了,使用AS关键词可以给值重命名,比如最大值被命名为了max_salary:

子查询

上面讨论的SELECT语句都仅涉及一个表中的数据,然而有时必须处理多个表才能获得所需的信息。

SELECT
of_dpt,COUNT(proj_name)
AS
count_project FROM
projectWHERE
of_dpt 

IN(SELECT
in_dpt FROM
employee WHERE
name='Tom');

连接查询

在处理多个表时,子查询只有在结果来自一个表时才有用。但如果需要显示两个表或多个表中的数据,这时就必须使用连接(join)操作。

SELECT
id,name,people_numFROM
employee JOIN
departmentON
employee.in_dpt = department.dpt_nameORDER
BY
id;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: