• MySql常用命令


    1.# 启动/停止服务
    net start/stop 服务名

    2.# 连接数据库
    mysql -u root -proot

    3.# 创建数据库
    CREATE DATABASE 数据库名;

    4.# 查看所有数据库
    SHOW DATABASES;

    5.# 使用数据库
    USE 数据库名;

    6.# 删除数据库
    DROP DATABASE 数据库名;

    7.# 创建表(创建表之前先选好数据库)
    CREATE TABLE student(studentNo int(4) primary key,name varchar(20));

    8.# 查看当前数据库下所有的表
    SHOW TABLES;

    9.# 添加主键约束
    CREATE TABLE student(studentNo INT(4) PRIMARY KEY);

    10.# 添加注释
    CREATE TABLE test (id INT(11) UNSIGNED COMMENT '编号')COMMENT='测试表'' ;

    11.# 查看表结构
    DESC 表名;

    12.# 删除表
    DROP TABLE 表名;

    13.# 修改表名
    ALTER TABLE 旧表名 RENAME[TO] 新表名;

    14.# 添加字段
    ALTER TABLE 表名 ADD 字段 数据类型 属性|约束;

    15.# 修改字段
    ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 属性|约束;

    16.# 删除字段
    ALTER TABLE 表名 DROP 字段名;

    17.# 添加主键
    ALTER TABLE 表名 ADD CONSTRAINT 主键名 PRIMARY KEY 表名(主键字段);

    18.# 添加外键
    ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY(外键字段) REFERENCES 关联表名(关联字段);

    19.# MySQL系统帮助
    Help 需要帮助的内容;

    20.# 查看当前数据库的存储引擎
    SHOW VARIABLES LIKE ‘storage_engine%’;

    21.# 插入一条数据
    INSERT INTO 表名 [(字段名列表)] VALUES (值列表);

    22.# 插入多条数据
    INSERT INTO 新表 (字段名列表) VALUES(值列表1),(值列表2),……,(值列表n);

    23.# 将查询结果放到新表中
    CREATE TABLE 新表(SELECT 字段1,字段2…… FROM 原表);

    24.# 查询所有结果
    SELECT * FROM 表名;

    25.# 修改数据
    UPDATE 表名 SET 字段1=值1,字段2=值2,…,段n=值n [WHERE 条件];

    26.# 删除数据
    TRUNCATE TABLE 表名; #TRUNCATE语句删除后将重置自增列,表结构及其字段、约束、索引保持不变,执行速度比DELETE语句快
    DELETE FROM 表名 [WHERE条件];

    27.# 查询全部数据
    SELECT * FROM 表名;

    28.# 查询部分列
    SELECT 列1,列2,... FROM 表名 [WHERE 条件] ORDER BY 根据哪个列进行排序 [ASC/DESC];

    29.# 给列起别名
    SELECT studentNo AS 学生编号, studentName AS 学生姓名,address AS 学生地址 FROM student WHERE address <> '河南新乡';

    30.# 查询空行
    SELECT studentName FROM student WHERE email IS NULL;

    31.# limit子句限制结果集
    SELECT <字段名列表>
    FROM <表名或视图>
    [WHERE <查询条件>]
    [GROUP BY <分组的字段名>]
    [ORDER BY <排序的列名>[ASC 或 DESC]]
    [LIMIT [位置偏移量,]行数];


    32.# 子查询
    SELECT … FROM 表1 WHERE 字段1 比较运算符(子查询)
    将子查询和比较运算符联合使用,必须保证子查询返回的值不能多于一个

    33.# in子查询
    SELECT studentName FROM student
    WHERE studentNo IN(
    SELECT studentNo FROM result
    WHERE subjectNo = (
    SELECT subjectNo FROM subject
    WHERE subjectName ='Logic Java'
    )AND studentResult = 60 );

    35.# not in 子查询
    SELECT studentName FROM student
    WHERE studentNo not IN(
    SELECT studentNo FROM result
    WHERE subjectNo = (
    SELECT subjectNo FROM subject
    WHERE subjectName ='Logic Java'
    )AND studentResult = 60 );

    36.# exists子查询
    select ... from 表名 where exists();
    子查询有返回结果,exists返回true,执行外层查询;子查询无返回结果,exists返回false,外层查询不执行

    37.# 分组后排序
    SELECT sex AS 性别,gradeId AS 年级编号,COUNT(*) AS 人数 FROM student
    GROUP BY sex,gradeId
    ORDER BY gradeId;

    38.# 分组后筛选
    SELECT * FROM student WHERE studentNo>1
    GROUP BY studentNo
    HAVING studentNo>2;

    39.# 内连接查询
    SELECT sub.subjectName,result.studentNo,result.result FROM sub,result
    WHERE sub.subjectNo=result.subjectNo;

    SELECT S.subjectName,R.studentNo,R.result FROM sub S INNER JOIN result R
    ON(S.subjectNo = R.subjectNo);

    40.#左外连接查询
    SELECT S.subjectName,R.result,R.studentNo FROM sub AS S
    LEFT JOIN result AS R ON S.subjectNo = R.subjectNo;

    41.#右外连接查询
    SELECT S.subjectName,R.result,R.studentNo FROM sub AS S
    RIGHT JOIN result AS R ON S.subjectNo = R.subjectNo;

  • 相关阅读:
    Day2 while 循环,格式化输出,运算符,字符串编码
    Day 1 变量,基础数据类型与条件语句
    关于字符的一些看法
    正则的全局问题
    模块——js功能(倒计时,幻灯)
    垂直居中
    不确定宽度元素居中
    css3媒体查询
    less的预处理
    手机幻灯
  • 原文地址:https://www.cnblogs.com/fzc521/p/9042700.html
Copyright © 2020-2023  润新知