zoukankan      html  css  js  c++  java
  • mysql命令整理

    MySQL大小写通用。

    一、常见用的mysql指令

    1、show databases;   #查看当前所有库

    2、show tables;   #查看所在库中的所有表

    3、use 库名;   #进入该库

    4、show tables from 库名;   #查看其他库中的所有表

    5、create table 表名;   #创建表

    6、create database 库名;   #创建库

    7、desc 表名;   #查看表的结构

    8、select version();   #在库中查看mysql的版本信息

    9、mysql --version 或 mysql --V   #不在库中查看mysql的版本信息

    二、基础查询

    1、select 字段名 from 表名;   #查询单个字段

    2、select 字段名,字段名 from 表名;   #查询多个字段

    3、select * from 表名;   #查询所有字段

    4、select 常量值;   #查询常量

    5、select 函数名(实参列表);   #查询列表

    6、select 100/1234;   #查询表达式

    7、起别名:1、as 2、空格

    8、select distinct 字段名 from 表名;

    9、select concat(字段名,字段名) from 表名;   #拼接,单输出不能是字符串

    10、select (is not null)* from employees where is not null;   #查询不为空的字段

    11、SELECT * FROM employees WHERE last_name LIKE '%\_n%';   #模糊查询

    筛选条件:

    && and 与

    || or 或

    ! not 非

    三、排序查询

    select * from employees where job_id < 20 order by salary asc(desc);   #升序降序

    四、常见函数

    1、SELECT CONCAT(last_name,'_',first_name) aaa FROM employees;   #拼接concat

    2、SELECT LENGTH('aab');   #length转换成数值

    3、SELECT UPPER('sdadas');   #upper转换成大写,lower转换成小写
    SELECT LOWER('ADSADASD');

    4、SELECT SUBSTR('31321',3,2);   #substr从左往右截取

    5、SELECT TRIM('aa'FROM'aaqqaass');   #trim去重,只能是左右两边

    6、SELECT INSTR('aabbcc','c');   #instr返回一个索引值,只为最先出现的那个值

    7、SELECT LPAD('abc',6,'dd');   #lpad指定字符,从左填充相应的值(字符总长等于6)

    8、SELECT RPAD('abc',6,'dd');   #rpad指定字符,从右填充相应的值(字符总长等于6)

    9、SELECT REPLACE('abcdaeaf','a','d');   #replace替换,将a替换成d

    五、数学函数

    1、SELECT ROUND(-1.66);   #round取整
       SELECT ROUND(-1.66,1);   #取小数后两位

    2、SELECT CEIL(1.22);   #想上取整

    3、SELECT FLOOR(1.33);   #向下取整

    4、SELECT TRUNCATE(1.6666,1);   #truncate截断

    5、SELECT MOD(10,3);   #mod取余

    六、日期函数

    1、SELECT NOW();   #返回当前日期+时间

    2、SELECT CURDATE();   #返回系统日期

    3、SELECT CURTIME();   #返回当前系统时间

    4、SELECT YEAR(NOW());   #用于指定部分,年、月、日、时、分、秒

    5、SELECT STR_TO_DATE('1998-3-2','%Y-%c-%d');   #将指定的格式转换成日期

    6、SELECT DATE_FORMAT(NOW(),'%Y-%c-%d');   #将指定字符转换成字符格式

    七、其他函数

    1、SELECT VERSION();   #查看版本

    2、SELECT DATABASE();   #查看当前所在表

    3、SELECT USER();   #查看当前是用什么用户登录mysql的

    八、流程控制函数

    1、SELECT IF(10<5,'da','xiao');   #比对大小,加以判断

    2、SELECT CASE WHEN salary>3000 THEN '真' ELSE '假' END FROM employees;   #与Java的switch一样

    十、分组函数

    1、SELECT SUM(salary) FROM employees;   #sum求和

    2、SELECT AVG(salary) FROM employees;   #avg求平均

    3、SELECT MAX(salary) FROM employees;   #max最大值

    4、SELECT MIN(salary) FROM employees;   #min最小值

    5、SELECT COUNT(salary) FROM employees;   #count计算个数

    十一、分组查询

    1、SELECT MAX(salary),job_id FROM employees GROUP BY last_name;   #进行分组查询

    2、SELECT MAX(salary),job_id,salary FROM employees GROUP BY last_name,salary ORDER BY job_id DESC;   #也可进行排序

    十二、连接查询

    SQL99
    1、SELECT last_name,department_name FROM departments d INNER JOIN employees e ON e.department_id = d.`department_id`;   #等值连接(注:必须起别名)

    2、非等值连接需复习

    3、SELECT e.last_name,m.last_name FROM employees e JOIN employees m ON e.`manager_id`=m.`employee_id`;   #自连接

    #懒得写了,其他自己补总共有sql92和sql99自己百度

    十三、分页查询

    #分页查询语句放在最后面!

    1、SELECT * FROM employees LIMIT 0,5;   #表示显示五行

    2、SELECT * FROM employees LIMIT 5,5;   #表示显示第五行以后的五行

    3、SELECT * FROM employees ORDER BY last_name DESC LIMIT 0,5;   #倒序查询第0到第五个参数

    十四、DML语言(表中的内容管理)

    插入语句:

    方式一、为确保数据的连贯性精准性(推荐),sql199

    1、INSERT INTO beauty(id,NAME,`sex`,`borndate`,`phone`,`photo`,`boyfriend_id`) VALUES(13,'愣头青','男','1996-3-24',13180082088,NULL,2);

    #插入语句(insert into 表名(列名,...) values(值1,...)),注意必须要跟表的约束信息一致,如不一致将创建失败

    方式二、为先存储后完善(试用与临时保持),添加起来繁乱,sql192

    1、INSERT INTO `beauty` SET id=14,NAME='愣头青',phone='999';   #无添加的部分为默认,系统会默认设置!

    #插入语法(insert into 表名 set 列名=值1,列名=值2,...),这方法比较简单吧

    修改语句:

    方式一、修改单个表时用到的方式,简单、易错(按需求来玩),sql192

    1、UPDATE `beauty` SET NAME='11223344' WHERE id LIKE'13';   #注:如不添加判断则修改所有表

    #左外右外全外连接需要复习

    删除语句:(delete、truncate)

    方式一、语法:delete from 表名 where 筛选条件

    1、DELETE FROM `beauty` WHERE phone=123456789101;

    方式二、语法truncate 关键字(一删全删);

    1、TRUNCATE jjj;   #删除的是表中的所有数据,而不是表(不能使用where判断注意)

    十五、DDL语言(库、表的管理)

    创建库

    方法一、语法:create database (IF NOT EXISTS) 库名

    1、CREATE DATABASE oldboy;

    2、CREATE DATABASE IF NOT EXISTS oldboy;   #检查是否已存在(IF NOT EXISTS)

    库的修改(只能修改库名)

    方法一、语法:暂时不会....(rename)


    删除库

    方法一、语法drop database 库名

    1、drop database oldboy;   #库一般不删除,如要删除请先保存在tmp目录下!做个脚本两年后删除,以防不测


    表的创建

    方法一、语法create table 表名(
    列名 列的类型[(长度)约束条件],
    列名 列的类型[(长度)约束条件,
    ...)

    表的修改

    #修改列名及约束条件
    1、ALTER TABLE employees CHANGE COLUMN last_name last_names VARCHAR(20);

    #修改列的类型或约束
    1、ALTER TABLE employees MODIFY COLUMN last_names VARCHAR(16);

    #添加新列
    1、ALTER TABLE employees ADD COLUMN od INT;

    #删除列
    1、ALTER TABLE employees DROP COLUMN od;

    #修改表名
    1、ALTER TABLE employees RENAME TO employeesdd;

    表的复制

    #复制表的结构
    1、CREATE TABLE abc LIKE employees; #仅复制表的结构

    2、CREATE TABLE qqq SELECT * FROM employees; #复制表的结构加数据

    3、create table sss select last_name select employees where 筛选条件; #复制部分数据

  • 相关阅读:
    求解未知矩阵的一些方法
    数二2019-19真题最简单的解法
    极坐标转化为参数方程的题目
    隐函数的不定积分
    Go 语言高性能编程
    1457. Pseudo-Palindromic Paths in a Binary Tree (M)
    0754. Reach a Number (M)
    1345. Jump Game IV (H)
    0091. Decode Ways (M)
    0498. Diagonal Traverse (M)
  • 原文地址:https://www.cnblogs.com/wangguangtao/p/10556719.html
Copyright © 2011-2022 走看看