Mysql表,列,库增删改查问题小结

 更新时间:2017年07月14日 15:24:27   作者:whiteme  
下面是我总结的一些基础的sql知识,方便以后使用,需要的朋友参考可以参考下

下面是我总结的一些基础的sql知识,主要是为了以后更好的查阅和帮助其他初学的人,同时记录自己的成长,还写了一点稍有

难度的sql面试题级别的题目,好了废话不多说,见真题。。。

#创建数据库
CREATE DATABASE mytest CHARACTER SET gbk
#删除数据库
DROP DATABASE mytest
表的操作
#创建表(create table 表名(columns))
CREATE TABLE students(
id INT PRIMARY KEY,
NAME CHAR(10) NOT NULL,
sex CHAR(4) NOT NULL
);
#删除表(drop table 表名)
DROP TABLE students
#在表格中插入数据(insert into 表名(属性) values(对应的值))
INSERT INTO students(id,NAME,sex) VALUES(1,"张三","男")
#更新表格数据(update 表名 set 键=值,键=值 where 条件)中间要用“,”隔开,其他的无效  set只需写一个
UPDATE students SET id=2 , NAME="a" WHERE id=1
#删除表中数据(delete from 表名 where 条件)
DELETE FROM students WHERE id=0
#查看表中数据(select 查询的东西 from 表名 where 条件)
SELECT * FROM students WHERE id=1
SELECT * FROM students ORDER BY age DESC(order by升序,order by 列名 desc降序)
列
#添加列(alter table 表名 add 列名 字段类型)
ALTER TABLE students ADD tel CHAR(20)
ALTER TABLE students ADD address CHAR(50) AFTER sex
#删除列(alter table 表名 drop 列名)
ALTER TABLE students DROP address
#修改列属性(alter table 表名 change 需要修改的列名 修改后的列名 新列名字段类型)
ALTER TABLE stu CHANGE telphone tel CHAR(20) DEFAULT "-"
ALTER TABLE students CHANGE tel
ALTER TABLE students RENAME stu
简单函数
SELECT SUM(age) AS "总年龄" FROM students
SELECT AVG(age) AS "平均年龄" FROM students
SELECT MAX(age) AS "最大年龄" FROM students
SELECT COUNT(id) AS "人数" FROM students(统计人数选择主键不然可为空的列会影响结果)
分组
表内容:
2005-05-09 胜
2005-05-09 胜
2005-05-09 负
2005-05-09 负
2005-05-10 胜
2005-05-10 负
2005-05-10 负        如果要生成下列结果, 该如何写sql语句?
      胜 负
2005-05-09 2 2
2005-05-10 1 2
SELECT DATA AS " ",SUM(result='胜') AS "胜" ,SUM(result='负') AS "负" FROM test1 GROUP BY DATA Case when(case 属性=“” then “” end)
      写出由table1.table2得到table3的sql语句 
SELECT t1.部门dep,SUM(CASE WHEN 月份mon='一月份' THEN 业绩yj ELSE NULL END) AS '一月份',
SUM(CASE WHEN 月份mon='二月份' THEN 业绩yj ELSE NULL END) AS '二月份',
SUM(CASE WHEN 月份mon='三月份' THEN 业绩yj ELSE NULL END) AS '三月份' FROM table1 t1 LEFT JOIN table2 t2 ON t1.部门dep=t2.部门dep GROUP BY 部门dep
左连接与右连接(left join 表名 on 连接语句)
Left join与right join区别就是:左连接是以主表为主,显示所有内容,若连接的表没有与它对应的值则不显示或显示为null,右连接同理。
内连接
用一条SQL语句查询出每门课都大于80分的学生姓名(表名为score)
  Select distinct(去重) name from score where name not in(
    Select name from score where fenshu<=80;
  );

Union all、union(下分别为t1.t1)
SELECT * FROM t1 UNION ALL SELECT * FROM t2 (不去除重复)===》t3
SELECT * FROM t1 UNION SELECT * FROM t2  (去除重复)=====>t4
(上分别为t3.t4)

以上所述是小编给大家介绍的Mysql表,列,库增删改查问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Windows10 64位安装MySQL5.6.35的图文教程

    Windows10 64位安装MySQL5.6.35的图文教程

    这篇文章主要介绍了Windows10 64位安装MySQL5.6.35的图文教程,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • MySQL备份与恢复之热拷贝(4)

    MySQL备份与恢复之热拷贝(4)

    热拷贝支持服务运行中进行备份,速度快,性能好,但它的劣势在于只能备份MyIsam的表,无法备份InnoDB的表,对热拷贝感兴趣的朋友可以参考一下这篇文章
    2015-08-08
  • MySQL多表查询的案例详解

    MySQL多表查询的案例详解

    这篇文章主要介绍了MySQL多表查询的案例说明,包括多表查询的分类及umion的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • MySQL中增删改查操作与常见陷阱详解

    MySQL中增删改查操作与常见陷阱详解

    这篇文章详细讲解了MySQL的增删改查的语句、语义和一些我们经常在开发工作中暴露的问题,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-11-11
  • bitronix 连接 MySQL 出现MySQLSyntaxErrorException 的解决方法

    bitronix 连接 MySQL 出现MySQLSyntaxErrorException 的解决方法

    这篇文章主要介绍了bitronix 连接 MySQL 出现MySQLSyntaxErrorException 的解决方法的相关资料,需要的朋友可以参考下
    2017-04-04
  • 如何修改mysql数据表主键

    如何修改mysql数据表主键

    这篇文章主要介绍了如何修改mysql数据表主键问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Windows10系统下Mysql8.0.13忘记root密码的操作方法

    Windows10系统下Mysql8.0.13忘记root密码的操作方法

    这篇文章主要给大家介绍了关于Windows10系统下Mysql8.0.13忘记root密码的操作方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 数据库崩溃,利用备份和日志进行灾难恢复

    数据库崩溃,利用备份和日志进行灾难恢复

    我相信数据库崩溃都不是大家所愿意看到的,但是这种情况发生时我们要采取补救措施,本文就是介绍了如何利用备份和日志进行灾难恢复,需要的朋友可以参考下
    2015-07-07
  • MySQL数据库迁移快速导出导入大量数据

    MySQL数据库迁移快速导出导入大量数据

    今天小编就为大家分享一篇关于MySQL数据库迁移快速导出导入大量数据,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • MySQL串行化隔离级别(间隙锁实现)

    MySQL串行化隔离级别(间隙锁实现)

    本文主要介绍了MySQL串行化隔离级别(间隙锁实现),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06

最新评论