数据库也是很重要的,听说这个职业快要被淘汰了!不知道是不是真的?
创建库:createdatabase库名
使用库:use库名;
创建表:createtable表名
删除表:droptable表名
删除库:dropdatabase库名
两个表链接:union
给表插入数据:insertinto表名(列名1,2,3,4)values(值1,2,3,4)
(如果不指定会按顺序自动填入表中)
更新数据:update表明set列名=值where条件
删除数据:deletefrom表名where条件
查询语句:
查询某个表的所有信息:select*from表名
查询带条件的信息:select*from表名where
排序查询:select*from表名orderby列名desc降序//asc升序(默认是升序)
在查询中合并重复的结果:selectdistinct(列名)from表名
查询中限制记录数:select*from表名limit2,4(取2-4条记录)
二、select*from表名limit8(直接取8条记录)
范围查询:select*from表名where列名betwee60and90
(列名属于60-90的范围下限是60,上限是90)
分组查询:select*from表名groupbygroupby列名
带条件的分组查询:select*from表名groupbygroupby列名having条件
子查询select*from表名where列名=(select*from表名where列名)
多表联查from涉及的表名where后面需要给出所有主外关联的键
一、selectsname,cnamefromstudent,scorewherestudent.id=score.id
二、内连接:innerjoinon
select*from表名innerjoin表名on表名.列名=表名.列名;
select*from表名innerjoin表名on表名.列名=表名.列名innerjoin表名.列名=表名.列名;
左外连接:leftjoinon
右外连接rightjoinon
select*from表名innerjoin表名on表名.列名=表名.列名;将inner改成left/right即可
模糊查询:%_这两个用的机会比较多。
%查询任意
_只查询一个字符
[]范围查询
逻辑查询:andorin。in(在多个查询中使用)
and和or多在where和having中带条件中使用
聚合函数(列名):
conunt计算个数
sum计算总和
avg求平均值
max求最大值
min求最小值
这个聚合函数不能和where一起使用
selectsum(列名)from表名;