• MySQL 常用SQL语句


    CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;#创建数据库
    SHOW DATABASES;#显示所有数据库
    SHOW CREATE DATABASE `test`;#显示创建数据库语句
    SHOW ENGINES;#显示数据库引擎
    DROP DATABASE `test`;#删除数据库
    SHOW VARIABLES LIKE 'storage_engine';
    
    
    #删除表
    DROP TABLE IF EXISTS `log_user_login`;
    
    #创建表
    CREATE TABLE `log_user_login`(
        `id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自动编号',
        `user_id` INT UNSIGNED NOT NULL COMMENT '会员 id',    
        `login_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '登录时间',
        `login_ip` VARCHAR(15) NOT NULL DEFAULT '0.0.0.0' COMMENT '登录 IP',
        `platform` TINYINT NOT NULL DEFAULT 0 COMMENT '登录平台[0 PC|1 手机浏览器|2 微信安卓端|3 微信IOS端]',
        PRIMARY KEY (`id`),
        CONSTRAINT `fk_user_user_login` FOREIGN KEY(`user_id`)
    )ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE utf8_general_ci COMMENT '[商城管理系统]会员登录记录表';
    
    #复制表结构
    CREATE TABLE `log_user_login_scheme` LIKE `log_user_login`
    
    #复制表结构和数据
    INSERT INTO tbl(col) SELECT col FROM tbl2 WHERE ...
    
    #查看表创建语句
    DESC `log_user_login`;
    SHOW TABLES;
    SHOW CREATE TABLE `log_user_login`;
    
    #表重命名
    ALTER TABLE `log_user_login` RENAME `user_login_log`;
    
    #表结构修改 ALTER TABLE <表名> MODIFY <字段名> <数据类型>
    ALTER TABLE `log_user_login` MODIFY `user_id` BIGINT;
    
    #表字段名重命名 ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <数据类型>
    ALTER TABLE `log_user_login` CHANGE `login_IP` VARCHAR(20);
    
    #显示表结构
    DESC `log_user_login`;
    
    #表添加字段
    ALTER TABLE `log_user_login` ADD `test` VARCHAR(20) NOT NULL AFTER `login_ip`;
    
    #查看索引
    SHOW INDEX FROM `test`;
    
    #表创建索引
    CREATE INDEX idx ON tbl(col);
    CREATE UNIQUE INDEX idx tbl(col);
    ALTER TABLE tbl ADD INDEX `idx_col`(`col`);
    
    #删除索引
    DROP INDEX idx ON tbl;
    
    #表删除字段
    ALTER TABLE `log_user_login` DROP `test`;
    
    #表存储引擎修改
    ALTER TABLE `log_user_login` ENGINE=InnoDB;
    
    #表删除外键
    ALTER TABLE `log_user_login` DROP FOREIGN KEY `fk_xxx`
    
    #创建存储过程
    CREATE PROCEDURE SelectNow()
    BEGIN
        SELECT NOW();
    END;
    
    CREATE PROCEDURE CountProduct(OUT c INT)
    BEGIN
        SELECT COUNT(*) INTO c FROM products;
    END;
    
    #创建函数
    CREATE FUNCTION SelectNOW()
    RETURNS DATETIME
        RETURN (SELECT NOW());
    
    #创建触发器
    CREATE TRIGGER `trig_course_add_student`
        BEFORE INSERT ON `wp_user_xp` FOR EACH ROW
        update wp_posts set student_count = student_count + 1 where id = new.course_id
    
    #查看触发器
    SHOW TRIGGERS;
    
    #SELECT 语句
    SELECT c.id,o.num
    FROM orders o  INNER JOIN customers c
    ON c.id = o.customer_id
    ORDER BY c.id
    
    
    SELECT * FROM employee WHERE (YEAR(NOW())-YEAR(hireday)) >=15;#获取工龄超过15年的员工
    SELECT * FROM products WHERE title REGEXP '^iphone'
    SELECT * FROM products WHERE price>25 AND EXISTS(SELECT name FROM suppliers WHERE id=25)
    SELECT num FROM tbl WHERE num IS NOT NULL
    SELECT DISTINCT user_id FROM orders
    SELECT num FROM tbl1 WHERE num > ANY(SELECT num FROM tbl2)
    SELECT num FROM tbl1 WHERE num > ALL(SELECT num FROM tbl2)
    SELECT id FROM orders WHERE order_no IN('S12121,','S121962')
    SELECT * FROM products WHERE name REGEXP '^iphone'
    
    #使用光标
    DECLARE cursor_product CURSOR FORM SELECT name,price FROM products;
    OPEN cursor_product;
    FETCH cursor_product INTO name,price;
    CLOSE cursor_product;
    
    #常用函数
    UPDATE `test` SET `title` = REPLACE(`title`,' ','');#字符串替换
    SELECT ABS(2),ABS(-2);#绝对值
    SELECT PI();#查看PI
    SELECT SQRT(9);#求平方根
    SELECT MOD(31,8);#求余数
    SELECT CEIL(-4.2),CEIL(4.2);#求整数 -4,5
    SELECT FLOOR(-4.2),FLOOR(4.2);#求整数 -5,4
    SELECT RAND(),RAND(1),RAND(1);#生成随机数,种子相同随机数相同
    SELECT ROUND(-3.14),ROUND(-4.56),ROUND(1.21);#四舍五入
    SELECT TRUNCATE(19.99,-1),TRUNCATE(19.99,0),TRUNCATE(19.99,1);#截取保留指定小数点位值
    SELECT SIGN(-2),SIGN(0),SIGN(2);#符号函数、
    SELECT POW(2,3);#幂函数
    SELECT EXP(3);#求自然数e的乘方
    SELECT LOG(3);#求自然数e的对数
    SELECT LOG10(3);#求基数为10的对数
    SELECT RADIANS(90);#角度转弧度
    SELECT DEGREES(PI());#弧度转角度
    SELECT SIN(1),ROUND(SIN(PI()));#求正弦
    SELECT ASIN(SIN(1)),ASIN(3);#求反正弦
    SELECT CHAR_LENGTH('我爱你中国'),CHAR_LENGTH('abcde');#求字符个数5,5
    SELECT LENGTH('我爱你中国'),LENGTH('abcde');#求字符串长度,15,5
    SELECT CONCAT('ABC','DE','FG','HI'),CONCAT('ABC',NULL,'DE');#合并字符串,'ABCDEFGHI'NULL
    SELECT INSERT('Question',2,4,'Change');#字符串部分替换,'QChangeion'
    SELECT LEFT('I Love China',6),RIGHT('I Love China',5);#获取子字符串
    SELECT LPAD('hello',4,'?*'),LPAD('hello',8,'?*'),RPAD('hello',4,'?*'),RPAD('hello',8,'?*');#字符串填充到指定长度
    SELECT LTRIM('     我爱你中国      '),RTRIM('     我爱你中国      '),RTRIM(LTRIM('     我爱你中国      ')),TRIM(' 我爱你中国 ');#删除空格
    SELECT TRIM('ab' FROM 'abfijefiabereabReEFab');#删除两端子字符串
    SELECT REPEAT('mysql',3);#字符串重复
    SELECT CONCAT('(', SPACE(6),')');#空格函数
    SELECT STRCMP('txt','txtab'),STRCMP('txtab','txt'),STRCMP('txt','txt');#字符串比较
    SELECT SUBSTRING('I love China',3,5),SUBSTRING('I love China',-5);#截取子字符串
    SELECT REVERSE('abc');#字符串逆序
    SELECT NOW(),CURRENT_DATE(),CURRENT_TIME();#日期时间函数
    SELECT UNIX_TIMESTAMP(),FROM_UNIXTIME(UNIX_TIMESTAMP());#时间戳
    SELECT MONTH('2019-2-19'),MONTHNAME('2019-2-19'),MONTH(NOW());#月份函数
    SELECT DAYNAME(NOW()),DAYOFWEEK(NOW());#星期函数
    SELECT YEAR(NOW());#年函数
    SELECT QUARTER(NOW());#季度函数
    SELECT MINUTE(NOW());#分钟函数
    SELECT SECOND(NOW());#秒函数
    SELECT IF(1>2,1,2);#IF 条件函数
    SELECT IFNULL(1,2),IFNULL(NULL,2);#空判断条件函数
    SELECT VERSION();#获取MYSQL版本号
    SELECT CONNECTION_ID();#获取当前用户的连接数
    SHOW PROCESSLIST;#查看用户连接信息
    SELECT USER();#获取登录用户名
    SELECT MD5('abc'),SELECT DECODE(ENCODE('secret','key'),'key');#加密解密函数key 为密钥
    SELECT CAST(100 AS CHAR(2)),CONVERT(NOW(),TIME);#改变数据类型
    SELECT LAST_INSERT_ID();#获取最后插入的id,自增表
     
  • 相关阅读:
    c#扩展函数
    c# 正则匹配对称括号
    sqllocaldb 2016安装
    scrapy图片数据爬取
    Scrapy爬取全站数据并存储到数据库和文件中
    Scrapy基于终端指令的持久化存储
    nginx指定配置文件
    腾讯云安装python36
    Django部署腾讯云服务时候报错:SQLite 3.8.3 or later is required (found 3.7.17)
    flask打包下载zip文件
  • 原文地址:https://www.cnblogs.com/hellohero55/p/12115972.html
Copyright © 2020-2023  润新知