SQL 语句(原生)

//查

 

//查询表里的所有数据

select * from 表名   

 

//根据id等字段查询数据

select * from 表名 where 字段 = 值 or 字段 = 值 

(例):select * from 表名 where id = 1 or name = admin;

 

//模糊查询

like % 值%

(例):select * from 表名 where 字段 link %值%; //前后匹配

 

//随机查询一条数据

select * from 表名 order by rand() LIMIT 1

 

//增

 

insert into 表名 (字段1,字段2) values (值1,值2);

(例):insert into 表名 ('id','name') values ('','admin');

 

主键id从151开始

ALTER TABLE 表名 AUTO_INCREMENT=151

 

//删

 

delete from 表名 where 字段=值;

(例):delete from 表名 where id=1;

 

delete from 表名 where id in (1,2,3);//批量删除

 

truncate TABLE   表名;//清空表里的所有数据

 

 

//改

 

update 表名 set 字段=值,字段=值 where 字段=值;

(例):update 表名 set name='1' where id=1;

 

 

//杂

 

//排序

asc  正序

desc 倒序

(例):select * from 表名 where id >1 order by id asc;  //id大于1的从小到大排序

 

 

//指定位置查询

limit 

(例):select * from 表名 where id limit 2,4;//根据id从第2条开始查询,查询4条

 

 

//指定条件查询

in

(例):select * from 表名 where id in (1,2); //查询id为1和2的数据

 

//当连表查询,r表的关联条件为字符串时,如:1,2,可使用 FIND_IN_SET(副表字段,主表字段),利用GROUP BY 进行分组,再使用GROUP_CONCAT(副表字段) 进行数据整合
获取到的数据为   [ 'r表id'=>1,'r表power_id'=>'1,2','p表url'=>'url1,url2']

SELECT r.*,GROUP_CONCAT(p.url) as  FROM `jy_role` `r` INNER JOIN `jy_power` `p` ON FIND_IN_SET(p.id ,r.power_id) WHERE `r`.`id` = 1  GROUP BY r.id;

 

//指定范围查询

beteeen ...and...

(例):select * from 表名 where id between 3 and 5; //从id三到五之间的数据,包括三五

 

//查询某个字段的平均值

(例):select avg(字段名) from 表名;

 

//某个字段求和

(例):select sum(字段名) from 表名;

 

//查询某个字段值最大的数据

(例):select max(字段名) from 表名;

 

//查询某个字段值最小的数据

(例):select min(字段名) from 表名;

 

//查询表里数据的总条数

(例):select count(字段名) from 表名;

 

 

posted @ 2019-04-28 14:44  钧一  阅读(1443)  评论(0编辑  收藏  举报