一.常用增删查改SQL语句的语法格式
1.增加数据 (1)insert into 表 (字段1,字段2.…) values (值1,值2.…) 注意:字段跟值的顺序是对应的。

(2)insert into  表  values (值1,值2.…)

这里的值对应的字段是数据库里字段的顺序,不能颠倒,否则会对应出错,这样会造成数据错位。

(3)insert into  表  set 字段1=值1,字段2=值2,.... 使字段名对应一个值。

2.查询数据 查询是SQL语句中使用最频繁的语句,因为大多数的增删改操作的基础操作都是查询。 (1)select 字段1,字段2,….. from 表 (2)select * 或 函数(字段) from 表

第二种查询方式,星号可以表示要查询的所有字段。当你要查询的字段数目很大时,可以使用这种方法是代码量变得简洁。但是如果需要查询的字段数比较少的话,使用这种方法会影响查询效果,所以当查询字段数较少时,最好采用函数的方式查询。
类似函数:count//统计所有字段 sum(字段)//求某字段的和 avg(字段)//求指定字段的平均值
max(字段)//求指定字段的最大值

(3)select  字段,字段,...... from  表  where  条件

这种方法是查询带条件字段时使用的方法。可以用条件语句来筛选查找的内容。

(4)select  字段,字段,......  from  表  where  字段  like '%值%' 
(5)select 字段,字段,......  from  表  where  字段  not like '%值%'

以上两种方法表示模糊查询,%表示匹配任意字符和任意次数

(6)select  字段,字段,......  from  表  where  字段  in (值,值) 
(7)select 字段,字段,......  from  表  where  字段  not in (值,值)

以上两种方法表示精确查询,不过不推荐经常使用,因为in函数的效率低下,影响查询效率。

(8)select  字段,字段,......  from  表 group by  字段 

group by表示归组/归类方法,以上方法用来查询不重复项

(9)select  字段,字段,......  from  表 order by  字段 [asc / desc ] 

order by主要是对数据进行排序的操作。 asc表示对数据正序排序,即从小到大排序。 desc表示逆序排序,即从大到小排序。

(10)select  字段,字段,......  from  表 limit 起始位, 条数 批量读取数据。
例: .....limit0, 5//从第1条开始读取5条数据 
    .....limit 5, 5//从第6条开始读取5条数据 
    .....limit 5//从第1条开始读取5条数据,简化写法

当出现多种组合的查询时,应当遵循WGOL的顺序规范,即以where,group by,order by,limit顺序进行查找。

例如:查询表user,id倒叙,age小于3岁,不重复职业job,取前10条。 将各个条件翻译成查询语句的话,对应的语句为:
order by id desc,where age < 3,group by job, limit 10。

他们的查询顺序应当遵循WGOL规范,所以这个查询语句为:
select * from user where age <3 group by job order by id desc limit 10;

3.修改数据 updata 表 set 字段=值,字段=值;

4.删除数据 delete from 表;

修改和删除操作是直接对数据库进行操作的,删除和修改之后不可恢复,所以使用的时候一定要谨慎。这两个操作都可以先进过WGOL操作之后再进行修改或者删除工作。

plus !补充下不同数据库之间复制表。

create database if not exists {db_dest} //假如不存在数据库
create table if not exists {table_name_dest} like {db_src}.{table_name_src}//假如不存在原来的table
delete * from {table_name}//删除目标表的所有数据
insert into {db_dest}.{table_name_dest} select * from {db_src}.{table_name_src}//拷贝表

Logo

更多推荐