zoukankan      html  css  js  c++  java
  • MySQL高级查询(一)

    修改表

    修改表名

    语法:      

    ALTER  TABLE<旧表名> RENAME  [TO] <新表名>;

    添加字段

    语法:

     ALTER  TABLE 表名 ADD 字段名 数据类型 [属性];

    修改字段

    语法:

     ALTER  TABLE 表名 CHANGE 原字段名 新字段名 数据类型 [属性];

    删除字段

    语法:  

    ALTER TABLE 表名 DROP 字段名;

    添加主外键

    1.添加主键约束

    语法:  

    ALTER TABLE 表名 ADD CONSTRAINT 主键名 PRIMARY KEY 表名(主键字段);

    2.添加外键约束

    语法:

     ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY (外键字段) REFERENCES 关   联表名(关联字段);

    DML语句回顾

    插入数据记录

    1.插入单行数据

    语法:  INSERT INTO 表名 [(字段名列表)]  VALUES (值列表);

    2.插入多行数据

    语法:  INSERT INTO 新表 (字段名列表) VALUES (值列表1), (值列表2), ......, (值列表n);

    3. 将查询结构插入到新表

    语法1:   

    INSERT INTO 新表(字段1,字段2,......)

    SELECT 字段1,字段2,......

    FROM 原表;

    语法2:

    CREATE TABLE 新表 (SELECT 字段1,字段2, ........FROM 原表);

    更新数据记录

    语法:

     UPDATE 表名 SET 字段1=值1,字段2=值2,........字段n=值n [WHERE 条件];

    删除数据记录

    语法:  DELETE  FROM 表名  [WHERE条件];    -------删除单条记录

    语法:  TRUNCATE TABLE 表名;                               ------删除全部记录

    数据查询

    DQL语句回顾

    LIMIT子句

    语法:      

    SELECT<字段名列表>

    FROM<表名或视图>

    [WHERE <查询条件>]

    [GROUP  BY  <分组的字段名>]

    [ORDER BY  <排序的字段名> [ASC 或  DESC]]

    [LIMIT  [位置偏移量, ]行数];

    常用函数

    常用聚合函数:

     

    函数名

    作用

    AVG()                        

    返回某字段的平均值

    COUNT()

     返回某字段的行数

    MAX()

    返回某字段的最大值

    MIN( )

    返回某字段的最小值

    SUM( )

    返回某字段的和

    常用的字符串函数

     

    函数名

    作用

    举例

    CONCAT(str1,str2,...,strn)

    连接字符串str1,str2,...,strn为一个完整字符串

    SELECT CONCAT(‘My’,’S’,’QL’);

    返回:MySQL

    INSERT(str,pos,len,newstr)

    将字符串str从pos位置开始,len个字符长的子串替换为字符串newstr

    SELECT INSERT(‘这是SQL SERVER数据库’,3,10,’MySQL’);

    返回:这是MySQL数据库

    LOWER(str)

    将字符串str中所有字符变为小写

    UPPER(str)

    将字符串str中所有字符串变为大写

    SELECT UPPER(‘MySQL’);

    返回: MYSQL

    时间日期函数

     

    函数名

    作用

    CURDATE()

    获取当前日期

    CURTIME()

    获取当前时间

    NOW()

    获取当前日期和时间

    WEEK(date)

    返回日期date为一年的第几周

    YEAR(date)

    返回日期date的年份

    HOUR(time)

    返回时间Time的小时值

    MINUTE(time)

    返回时间Time的分钟值

    DATEDIFF(date1,date2)

    返回日期参数date1和date2之间相隔的天数

    ADDDATE(date,n)

    计算日期参数date加上n天后的日期

    数字函数

     

    函数名

    作用

    CEIL(x)

    返回大于或等于数值x的最小整数

    FLOOR(x)

    返回小于或等于数值x的最大整数

    RAND()

    返回0~1间的随机数

  • 相关阅读:
    spring boot项目接入xxl-job
    Vue3 目录结构
    [原创]阿里全链路压测学习及理解
    python测试开发django-107.form组件widgets(radio/checkbox/单选多选下拉框/日历控件)
    ubuntu通过nginx部署fastcgi程序
    fastcgi
    fpc protobuf开源框架
    delphi jwt
    JWT
    google protobuf经验
  • 原文地址:https://www.cnblogs.com/ase0311/p/7601054.html
Copyright © 2011-2022 走看看