数据库中表的增删改查的基本操作命令

向数据库中的表增加数据:
insert into 表名 values (,,,,,);(内容要和表的结构字段相符)
--------------------------------------------------
解决中文乱码问题:
[client]
port=3306
[mysql]
default-character-set=gbk
修改完需要重新启动服务
---------------------------------------------------
更新表中的数据:
update 表名 set 字段(name)=值(‘zhangqian’),字段=值.......---不加where 指更新所有的记录


update user set salary=3000 where username='班长'; 加where 指更新指定的列
-------------------------------------------------------------------
update user set salary=4000,job='BOSS' where username='美美';
-------------------------------------------------------------------------------


删除表中的数据:
delete from 表名 ;删除表中的所有数据
delete from 表名 where 字段 = “值”;删除指定列的数据


truncate 表名; 删除所有的数据 =======delete from 表名
* truncate 和 delete的区别:
* truncate删除数据,先删除整个表。再创建一个新的空的表。(效率)
        * delete删除数据,一条一条删除的。(*****)


----------------------------------------------------------------------


选择表中的数据:
select * from 表名  --查询表中所有的数据
select 字段名1,字段名2,字段名3 from 表名; 查询指定的字段名;
select distinct 字段名 from 表名 ;   --查询指定的字段名去除重复的数据


select (字段名1+字段名2+字段名3)as 新的字段名 from 表名 ----将字段名1和字段名2 和字段名3 之和作为新的字段名输出,用as 做别名,as 可省略




向数据库中的表增加数据:
insert into 表名 values (,,,,,);(内容要和表的结构字段相符)
--------------------------------------------------
解决中文乱码问题:
[client]
port=3306
[mysql]
default-character-set=gbk
修改完需要重新启动服务
---------------------------------------------------
更新表中的数据:
update 表名 set 字段(name)=值(‘zhangqian’),字段=值.......---不加where 指更新所有的记录


update user set salary=3000 where username='班长'; 加where 指更新指定的列
-------------------------------------------------------------------
update user set salary=4000,job='BOSS' where username='美美';
-------------------------------------------------------------------------------


删除表中的数据:
delete from 表名 ;删除表中的所有数据
delete from 表名 where 字段 = “值”;删除指定列的数据


truncate 表名; 删除所有的数据 =======delete from 表名
* truncate 和 delete的区别:
* truncate删除数据,先删除整个表。再创建一个新的空的表。(效率)
        * delete删除数据,一条一条删除的。(*****)


----------------------------------------------------------------------


选择表中的数据:
select * from 表名  --查询表中所有的数据
select 字段名1,字段名2,字段名3 from 表名; 查询指定的字段名;
select distinct 字段名 from 表名 ;   --查询指定的字段名去除重复的数据




--------------------------------------------------------------------
 select name,(math+english+chinese) as sum from stu; 
将字段math,english , chinese 用as 作为一个新的字段sum 输出




 select name,math+10,english+10,chinese+10 from stu;
在选择的时候还可以对某些字段进行修改增删改,显示出来




----------------------------------------------------------------------
在选择的时候还可以使用where 作为条件查询


select * from 表名 where 查询条件




----------------------------------------------------------------
模糊查询:like


% 代表零个或者多个字符
_代表一个字符


like '%张_' 表示查询的是张前面可以有零个 或者多个 字符,张后面只能有一个字符


---------------------------------------------------


查询英语分数在 80-90之间的同学。
  select * from stu where english >80 and english <90;(不包含)
  select * from stu where english between 80 and 90;(包含)


查询所数学分数为18,78,46的同学
   select * from stu where math in (18,78,46);


查询所有姓班的学生
  select * from stu where name like '班%'


----------------------------------------------------------------


order by + 字段名 ,排序,应该在select 子句的结尾


升序:asc 或者不写
降序: desc




---------------------------------------------------------------


聚集函数 count(列名)返回某一列,行的个数之和(总的列的个数或者行数)




聚集函数sum (列名) 返回某一列的数值的总和
注:sum 仅对数值起作用,对多列求和时,“,”不能少
ifnull(xxxxx,0) 如果为null ,则值是0
sum(ifnull(math,0)) 如果是空则值为0,如果不是则是math 对应的值




------------------------------------------------------------------
avg  平均数
  select avg(ifnull(math,0)+english+chinese) from stu;




avg = sum/count




------------------------------------------------------


max  最大值


select max(math) from stu;


min 最小值


select min(math) from stu;


----------------------------------


group by   分组 -- 条件过滤需要用having ,不能使用 where


---------------------------------


小结 select 语句: 
 
 select ...... from.....where.....group by......having......order by.....;

















  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值