mysql数据操作学习
mysql数据的基本操作:增(insert) 删(delete)改(update)查(select);
1、增加数据;
语法:insert into 表名(字段名1,字段名2) values (数据1,数据2);



注:字段名和数据要一一对应;
字符串和时间日期类型用单引号引起来;
字段可以省略,但是要按顺序全字段数据插入;
如果字段是字符串类型,必须用单引号或双引号;
一条语句插入多个数据;
2、删除数据:
语法:delete from table_name [WHERE Clause]
*不带条件的删除的是所有的数据;通常不使用;
* 带条件的删除,使用where id = 2;
truncate 表名: 删除表中所有数据,标识所用值重置;

3、更新数据:
语法:update table_name set field1=newvalue1, field2=newvalue2 [WHERE Clause];
注:修改表中某一行某个字段的数据;
如果不加where条件是修改所有的数据;

修改后:
4、查询数据(重点):
语法:
select 字段1,字段2 from 表名 [where Clause][LIMIT N][OFFSET M]

² 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
² SELECT 命令可以读取一条或者多条记录。
² 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
² 你可以使用 WHERE 语句来包含任何条件。
² 你可以使用 LIMIT 属性来设定返回的记录数。
² 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
4.1查询所有的列
select * from 表名;

4.2 使用别名
select 字段1 as ‘新名’,字段2 from 表名

4.3 where条件(逻辑and or 比较>、<、=、>=、<=、<>不等于)

² where子句中可以指定任何条件。
² where中可以使用and或or指定一个或多个条件。
² where可以运用于delete或者update命令中。
例如:select * from 表名 where 字段1>值 and 字段2<值;
使用主键来作为 WHERE 子句的条件查询是非常快速的。
4.4 where条件中between and
select * from 表名 where 字段 between 75 and 90;

4.5 空条件查询 (NULL 值处理)
为了处理这种情况,MySQL提供了三大运算符:
v IS NULL: 当列的值是 NULL,此运算符返回 true。
v IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
v <=>: 比较操作符(不同于=运算符),当比较的的两个值为 NULL 时返回 true。
注:关于 NULL 的条件比较运算是比较特殊的。你不能使用 = NULL 或 != NULL 在列中查找 NULL 值 。
select * from 表名 where 字段 IS NULL;(IS NOT NULL)
4.6 模糊查询like(重点)
有时候我们需要获取 runoob_author 字段含有 "COM" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。
SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。
如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。
例如:select * from 表名 where 字段 like ‘%w%’;
select * from 表名 where 字段 like ‘李_’;
%:表示任意字符;字符可有可无
_:表示一个字符;此字符必须有

4.4去除重复数据(DISTINCT)
select distinct 字段1 from 表名;

4.5排序(order by),
如果我们想要对读取的数据进行排序,我们可以使用order by子句来设定按那个字段那种方式来排序。
select *from 表名 order by 列名 asc(asc升序默认;desc降序)

² 你可以使用任何字段来作为排序的条件,从而返回排序后的查询结果。
² 你可以设定多个字段来排序。
² 你可以使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列。
² 你可以添加 WHERE...LIKE 子句来设置条件。

浙公网安备 33010602011771号