《MySQL必知必会》笔记一 数据库入门及数据检索

数据库是保存表和其他SQL结构的容器

客户机--服务器软件,服务器部分负责所有的数据访问和处理,运行在数据库服务器上;关于数据的增删、更新等的请求都由服务器软件完成,这些请求来自运行客户机的计算机;客户机是与用户打交道的软件;

表由行和列组成,行包含了某个对象的所有信息,列是某个分类的所有信息,也就是所有对象在这个分类的所有信息;

 

主键,一列或者一组列,其值能够唯一的标识去分表的每一行;没有主键,更新和删除特定的行很困难;

SQL,结构化查询语言,专门用来与数据库通信的语言;

数据库----行列(记录、字段)--

 

显示数据库列表:SHOW DATABASES;

使用某数据库:USEdatabasename;

显示当前数据库的表:SHOW TABALES

显示某表的列:SHOW COLUMNS;

SHOW帮助:HELP SHOW;

 

数据检索:SELECT

检索单个列:SELECT列名 FROM 表名;返回所有匹配的行,无论行是否重复;

检索多个列:SELECT列名,列名,列名 FROM表名;

检索所有列:SELECT *FROM表名;

检索不同的行:SELECT  DISTINCT列名 FROM表名;行不重复;

限制结果显示:SELECT列名 FROM表名 LIMIT 行数量;SELECT列名 FROM表名 LIMIT 开始行号 行数量;

 

排序检索的数据:ORDER BY

SELECT列名 FROM表名ORDER BY 列名;后面列名可一个或多个,相同时按下一个列排序;

指定排序方向:SELECT列名 FROM表名ORDER BY 列名 DESC

 

过滤检索的数据:WHERE

SELECT列名 FROM表名 WHERE某列=某值;条件支持常用比较条件及BETWEEN;

不匹配检查:SELECT列名 FROM表名 WHERE某列<>某值;

范围值检查:SELECT列名 FROM表名 WHERE某列BETWEEN某值 AND某值;

J检查出某列里为空值的行:SELECT列名 FROM表名 WHERE某列 IS NULL;除此语句外,匹配过滤和不匹配过滤均不返回NULL值的行;

 

组合WHERE子句进行数据过滤:操作符ANDORINNOT

select列名from 表名 where子句 or where子句;

select列名from 表名 where列名in (某值,某值);在某两值或多值之间的行

select列名from 表名 where列名not in (某值,某值);满足否定not之后的条件的行

 

用通配符进行过滤:LIKE%_

搜索模式,由字面值、通配符或者两者的组合构成的搜索条件;

搜索条件可以根据数据库的配置方式来设置是否去分大小写;

谓词LIKE,后面跟的搜索模式利用通配符而不是直接相等匹配;

select列名from 表名 where列名 like'abc%';表示以abc开头的字符串;

%匹配任意字符的出现任意次数,下划线_只匹配单个字符;

select列名from 表名 where列名 like'_abc%';表示在abc前面还有一个字符,搜索以‘某abc’字符开头的行;

你可能感兴趣的:(数据库)