zoukankan      html  css  js  c++  java
  • MySQL常用语句

    1、MySQL数据库的安装
    数据库,主要用于数据的存放
     
    2、MySQL规范
    sql语句可单行或多行书写,以分号结尾
    语句为大写,变量名为小写
     
    3、MySQL数据库的操作
    创建——CREATE DATABASE db_name;
    查看——SHOW DATABASES;
    修改数据库的字符串格式——ALTER DATABASE db_name character set utf8;
    删除数据库——DROP DATABASE db_name;
    使用/切换数据库——USE db_name;
     
    4、数据表的增删改查
    创建一个员工表
    CREATE TABLE employee(
    id INT PRIMARY KEY auto_increment,
    name VARCHAR(20),
    resume TEXT);
     
    约束:primary key(非空且唯一);主键能够区分当前记录的字段
    unique 唯一
    not null 不为空
    auto_increment 用于主键字段,必须是数字类型
     
    查看表的信息
    DESC tab_name ——查看表结构
    SHOW TABLES——查看当前数据库所有的表
     
    修改表的结构
    1、增加列(字段)
    ALTER TABLE tab_name ADD 列名 类型 约束条件 [first | after 字段名];
    2、修改列类型
    ALTER TABLE tab_name MODIFY 列名类型约束;
    3、修改列名
    ALTER TABLE tab_name CHANGE 列名 新列名 类型约束;
    4、删除一列
    ALTER TABLE tab_name DROP 列名;
    5、修改表名
    RENAME TABLE 表名 to 新表名;
    6、修改表所用的字符集
    ALTER TABLE student CHARACTER SET utf8;
    7、删除表
    DROP TABLE tab_name;
     
    对数据表的操作
    增加插入数据——INSERT tab_name (field1....) VALUES (value1.....);
    修改表记录——UPDATE tab_name SET field1=value1,......也可以加WHERE语句
    删除表记录——DELETE FROM tab_name 也可以加WHERE语句
    使用TRUNCATE删除表记录——TRUNCATE TABLE tab_name
     
    查询记录表(重点)
    查看数据表信息——SELECT *FROM 表名
    查询语法——FROM tab_name
    WHERE 条件
    GROUP BY feild
    HAVING 筛选
    LIMIT 限制条数
     
    使用WHERE语句,进行过滤查询
    SELECT * FROM tab_name WHERE name='yuan';
    比较运算符: > < >= <= != between 80 and 100 值在10到20之间 in(80,90,100) 值是10或20或30 like 'yuan%' 以yuan开头的字符串
    逻辑运算符: 在多个条件直接可以使用逻辑运算符 and or not
     
    ORDER BY 排序
    SELECT * FROM tab_name ORDER BY field DESC|ASC;
    ASC为默认——从小到大,DESC——从大到小
     
    GROUP BY分组查询
    对购物车按类名分组后显示每一组商品价格总和超过150的商品
    SELECT class,SUM(price) FROM order_menu GROUP BY class HAVING SUM(price)>150;
     
    having 和 where两者都可以对查询结果进行进一步的过滤,差别有: <1>where语句只能用在分组之前的筛选,having可以用在分组之后的筛选; <2>使用where语句的地方都可以用having进行替换 <3>having中可以用聚合函数,where中就不行。
     
    聚合函数
    COUNT(列名):统计行的个数
    SUM(列名):统计满足条件的内容和
    AVG(列名):求平均数
    MAX、MIN:求最高分和最低分
     
    LIMIT记录条数限制
    SELECT * from ExamResult limit 1; SELECT * from ExamResult limit 2,5; -- 跳过前两条显示接下来的五条纪录 SELECT * from ExamResult limit 2,2;
     
    正则表达式
    SELECT * FROM employee WHERE emp_name REGEXP '^yu'; SELECT * FROM employee WHERE emp_name REGEXP 'yun$'; SELECT * FROM employee WHERE emp_name REGEXP 'm{2}';
     
    外键约束
    FOREIGN KEY (charger_id) REFERENCES charge(id)
    增加外键和删除外键
    ALTER TABLE student ADD CONSTRAINT abc FOREIGN KEY(charger_id) REFERENCES classcharger(id); ALTER TABLE student DROP FOREIGN KEY abc;
     
    多表查询
    内连接
    select * from employee inner join department on employee.dept_id = department.dept_id;
    左外连接:在内连接的基础上增加左边有右边没有的结果
    select * from employee left join department on employee.dept_id = department.dept_id;
    右外连接:在内连接的基础上增加右边有左边没有的结果
    select * from employee right join department on employee.dept_id = department.dept_id;
     
    DISTINCT——去重
     
     
     
     
     
     
     
     
  • 相关阅读:
    python 合并 Excel 单元格
    python 设置 Excel 表格的行高和列宽
    Python 用 openpyxl 模块统计 Excel 表格中的数据,以字典形式写入 py 文件
    python 打印字母阶梯和金字塔
    python 用 openpyxl 读取 Excel 表格中指定的行或列
    Python 的 filter() 函数
    Python 的 map() 函数
    python 之 range() 函数
    python 的 reduce() 函数
    python 之 lambda 函数
  • 原文地址:https://www.cnblogs.com/fenglinglf/p/7261287.html
Copyright © 2011-2022 走看看