Mysql表,列,库增删改查问题小结
下面是我总结的一些基础的sql知识,主要是为了以后更好的查阅和帮助其他初学的人,同时记录自己的成长,还写了一点稍有
难度的sql面试题级别的题目,好了废话不多说,见真题。。。
#创建数据库 CREATEDATABASEmytestCHARACTERSETgbk #删除数据库 DROPDATABASEmytest 表的操作 #创建表(createtable表名(columns)) CREATETABLEstudents( idINTPRIMARYKEY, NAMECHAR(10)NOTNULL, sexCHAR(4)NOTNULL ); #删除表(droptable表名) DROPTABLEstudents #在表格中插入数据(insertinto表名(属性)values(对应的值)) INSERTINTOstudents(id,NAME,sex)VALUES(1,"张三","男") #更新表格数据(update表名set键=值,键=值where条件)中间要用“,”隔开,其他的无效set只需写一个 UPDATEstudentsSETid=2,NAME="a"WHEREid=1 #删除表中数据(deletefrom表名where条件) DELETEFROMstudentsWHEREid=0 #查看表中数据(select查询的东西from表名where条件) SELECT*FROMstudentsWHEREid=1 SELECT*FROMstudentsORDERBYageDESC(orderby升序,orderby列名desc降序) 列 #添加列(altertable表名add列名字段类型) ALTERTABLEstudentsADDtelCHAR(20) ALTERTABLEstudentsADDaddressCHAR(50)AFTERsex #删除列(altertable表名drop列名) ALTERTABLEstudentsDROPaddress #修改列属性(altertable表名change需要修改的列名修改后的列名新列名字段类型) ALTERTABLEstuCHANGEtelphonetelCHAR(20)DEFAULT"-" ALTERTABLEstudentsCHANGEtel ALTERTABLEstudentsRENAMEstu 简单函数 SELECTSUM(age)AS"总年龄"FROMstudents SELECTAVG(age)AS"平均年龄"FROMstudents SELECTMAX(age)AS"最大年龄"FROMstudents SELECTCOUNT(id)AS"人数"FROMstudents(统计人数选择主键不然可为空的列会影响结果) 分组 表内容: 2005-05-09胜 2005-05-09胜 2005-05-09负 2005-05-09负 2005-05-10胜 2005-05-10负 2005-05-10负如果要生成下列结果,该如何写sql语句? 胜负 2005-05-0922 2005-05-1012 SELECTDATAAS"",SUM(result='胜')AS"胜",SUM(result='负')AS"负"FROMtest1GROUPBYDATACasewhen(case属性=“”then“”end) 写出由table1.table2得到table3的sql语句 SELECTt1.部门dep,SUM(CASEWHEN月份mon='一月份'THEN业绩yjELSENULLEND)AS'一月份', SUM(CASEWHEN月份mon='二月份'THEN业绩yjELSENULLEND)AS'二月份', SUM(CASEWHEN月份mon='三月份'THEN业绩yjELSENULLEND)AS'三月份'FROMtable1t1LEFTJOINtable2t2ONt1.部门dep=t2.部门depGROUPBY部门dep 左连接与右连接(leftjoin表名on连接语句) Leftjoin与rightjoin区别就是:左连接是以主表为主,显示所有内容,若连接的表没有与它对应的值则不显示或显示为null,右连接同理。 内连接 用一条SQL语句查询出每门课都大于80分的学生姓名(表名为score) Selectdistinct(去重)namefromscorewherenamenotin( Selectnamefromscorewherefenshu<=80; ); Unionall、union(下分别为t1.t1) SELECT*FROMt1UNIONALLSELECT*FROMt2(不去除重复)===》t3 SELECT*FROMt1UNIONSELECT*FROMt2(去除重复)=====>t4 (上分别为t3.t4)
以上所述是小编给大家介绍的Mysql表,列,库增删改查问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!