MySQLMySQL学习

mysql 参考手册 一 介绍

2016-05-21  本文已影响119人  一曲广陵散

mysql介绍

mysql 是一个关系型数据库管理系统,是mysqlAB(瑞典)开发,现在属于oracle公司,是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有的数据放在一个大仓库中,增加了速度并且提高了灵活性

简单信息

select version(),current_date;可以查询mysql当前的版本号和当前的日期 输入\c可以将正在输入过程的sql语句终止

下面表中是mysql常见的提示符

提示符 含义
mysql> 准备好接受新的命令
-> 等待多行命令的下一行
'> 等待以单引号开始的字符串的结束
"> 等待以双引号开始的字符串的结束
``>` 等待以反斜点开始的识别符的结束
/*> 等待以/*开始的注释的结束

创建数据库

显示数据库 : show databases; 创建数据库: create database database_name; 使用数据库: use database_name;

创建数据表

创建数据表:create table table_name (column1 类型,column2 类型,...); 显示创建数据表基本信息:describe table_name;或者desc table_name; 显示创建数据库的sql语言:show create table table_name;

添加数据到数据表

(1)将数据记录创建成一个txt文件,每一行包含一个记录,用tab定位符把值分开,对于丢失的值使用\N或者NULL表示, 加载记录的sql语句是:load data local infile '/yz/home/text_name.txt' into table table_name lines terminated by '\r\n'; (2)一次添加一条记录可以使用insert语句,最简单的形式是:提供的每一列值,顺序和create table语句中的列的顺序一致 insert into table_name values ('','','','','',NULL);

检索信息

选择表中的所有的记录:select * from table_name; 更新数据:update table_name set column1='new value' where index条件; 使用关键字distinct 检索出一条唯一的输出记录:select distinct column_name from table_name; 使用关键字order by 按照某一种顺序进行排序:select column_name from table_name order by index条件; 可以使用关键字binary使得字符串类型的数据按照大小写排序:select column_name from table_name order by binary index条件; mysql默认的排序是升序,也就是最小的值排在最前面,使用关键字desc可以进行降序排序,desc关键字仅适用于它前面的列名,不影响多列排序时候其他列的排序,select * ffrom table_name order by column1, column2 desc;

日期计算

计算年限可以使用函数timestampdiff()函数:select timestampdiff(year,birthday,curdate()) as age from table_name; 其中year 表示计算出的时间差表示以年为单位,curdate()可以得到现在的日期 函数year()可以提取出日期的年部分,同样的,month()可以提取出日期的月部分,dayofmonth()可以提取出日期的day 部分 查询的时候,比较数据值是否是NULL,使用column_value is not NULL,不能使用column_value != NULL

NULL值的操作

查询的时候,比较数据值是否是NULL,使用column_value is not NULL,不能使用column_value != NULL 在group by 中,两个null值被视为相同等价的 在order by 中,默认情况下null会出现在最前面

模式匹配

mysql提供标准的sql模式匹配和vi中的扩展正则表达式模式匹配的模式, "_"匹配任何单个字符,"%"匹配任意数目字符(包含零字符) mysql的默认模式是忽略大小写的,使用比较操作符like ,not like 而不是= ,!=进行模糊匹配 select * from table_name where column1 like '%value'; 如果想要找到包含5个字符的名字,可以使用"_"模式字符:select * from table_name where column1 like '_____'; 当需要使用到扩展正则表达式的时候,使用regexp(regular expression) 关键字,扩展正则表达式的常见字符是: '.'匹配任何单个的字符 [...]匹配在方括号中的任何字符,[a-z]匹配任何的字母,[0-9]匹配任何的数字 在模式的开始出使用'^',结尾处使用'$'

计算行数,联表查询

使用count , group by 进行数据的分类计算

上一篇下一篇

猜你喜欢

热点阅读