首页 > 数据库 >SQL基础语句

SQL基础语句

时间:2023-04-22 23:15:52浏览次数:32  
标签:语句 数据库 SQL 基础 字段 ..... SELECT 表名 字段名

SQL 语句分类

  1. DDL:数据定义语言,用来定义数据库对象(数据库,表,字段 )

  2. DML:数据操作语言,用来对数据库中的数据进行增删减

  3. DQL:数据查询语言,用来查询数据库中表的记录

  4. DCL:数据控制语言,用来创建数据库表,用来控制数据库的访问权限

    DDL-数据库操作

    查询

    SHOW DATABSES; 查询所有数据库

    SELECT DATABASE(); 查询当前数据库

    DESC 表名; 查询表结构

    SHOW CREATE TABLE 表名;查询指定表的建表语句

    创建

    CREATE DATABSE[IF NOT EXISTS]数据库名[DEFAULT CHARSET 字符集] [COLLATE 排序规则];

    CREATE TABLE 表名(

    字段1 字段1类型[COMMENT 字段1注释],

    .......

    字段n 字段n类型[COMMENT 字段n注释]

    )[COMMENT 表注释];

    注意:[......]为可选参数,可有可无

    删除

    DROP DATABASE[LE EXISTS]数据库名

    使用

    USE 数据库名

    DML-增删改

    添加字段

    ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMENT 注释] [约束];

    修改数据类型

    ALTER TABLE 表名 MODIFY 字段名 新数据类型 (长度);

     

    修改字段名和字段类型

    ALTER 表明 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];

    删除字段

    ALTER TABLE 表名 DROP 字段名;

    修改表名

    ALTER TABLE 表名 RENAME TO 新表名;

    删除表

    DROP TABLE [IF EXISTS]表名;

    删除表,并重新创建该表

    TRUNCATE TABLE 表名;

     

    • 添加数据 INSERT

    • 修改数据 CUPDATE

    • 删除数据 CDELETE

    添加数据

    给指定字段添加数据

    INSERT INTO 表名(字段名1,字段名2......) VALLUES(值1,值2.....);

    给全部字段添加数据

    INSERRT INTO 表名 VALUES(值1,值2....);

    批量添加数据

    INSER INTO 表名(字段名1,字段名2.....) VALUESC (值1,值2.....),(值1,值2.....)(值1,值2......).....;

    INSER INTO 表名 VALUES(值1,值2.......),(值1,值2).....;

     

    修改数据

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

    删除数据

    DELETE FROM 表名[WHERE 条件];

    DQL-数据查询

    • SELECT 字段列表

    • FROM 表名列表

    • WHERE 条件列表

    • GROUOP BY 分组字段列表

    • HAVING 分组后条件列表

    • ORDER BY 排序字段列表

    • LIMIT 分页参数

 

查询多个字段

SELECT 字段1,字段2.....FROM 表名;

SELECT * FROM 表名;

设置别名

SELECT 字段1[AS 别名1],字段2[AS 别名2].....FROM 表名;

去除重复记录

SELECT DISTINCT 字段列表 FROM 表名;

运算符

比较运算符

  1. > 大于

  2. >= 大于等于

  3. < 小于

  4. <= 小于等于

  5. <>或!= 不等于

  6. BETWEEN....AND....在某个范围之内(含最大,最小值)

  7. IN(......) 在IN之后的列表中的值,多选一

  8. LIKE 占位符 模糊匹配(_单个字符,%任意个字符)

  9. IS NULL 是NULL

逻辑运算符

  1. AND或&& 并且(多个条件同时成立)

  2. OR或|| 或者(多个条件任意一个成立)

  3. NOT或! 非,不是

 

聚合函数

  1. COUNT 统计数量

  2. MAX 最大值

  3. MIN 最小值

  4. AVG 平均值

  5. SUM 求和

SELECT 聚合函数(字段列表)FROM 表名;

 

分组查询

SELECT 字段名 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组过滤条件];

执行顺序:WHERE>聚合函数>HAVING

分组之后,查询的字段一般为聚合函数和分组字段查询其他字段无意义

 

 

标签:语句,数据库,SQL,基础,字段,.....,SELECT,表名,字段名
From: https://www.cnblogs.com/longlonglong777/p/17344383.html

相关文章

  • SpringDay01-入门基础知识、Bean的配置(一)
    Spring(黑马)一、基础知识1.1传统JavaWeb的缺点传统的JavaWeb在实现某个主要的业务逻辑时需要做的事情:new一个实现类对象,然后通过对象调用某个主要的方法;开启事务、提交事务、回滚事务;在日志中记录修改数据;在日志中记录异常数据等。以上传统方法带来的问题:实现类与接......
  • Mysql解决Authentication plugin ‘caching_sha2_password‘ cannot be loaded
    1、登录Mysqlmysql-uroot-p2、修改账户密码加密规则并更新用户密码//修改加密规则ALTERUSER'root'@'localhost'IDENTIFIEDBY'password'PASSWORDEXPIRENEVER;//更新一下用户的密码ALTERUSER'root'@'localhost'IDENTIFIEDWITHmysql_native_pa......
  • archlinux安装配置MySQL8.x版本
    一:到官网下载Community版本的MySQL:https://dev.mysql.com/downloads/mysql/ 二:解压下载的mysql:xz-dmysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz先将.xz文件解压成tar文件,然后再用:tarxvfmysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar将.tar文件解压出来;......
  • mysql设置允许外部访问
    配置mysql允许外部进行登录访问;登录进入mysql;mysql-uroot-p输入密码进入,usermysql;selecthost,userfromuser; 3.更新user表中root用户域属性,’%'表示允许外部访问updateusersethost='%'whereuser='root'; 4.执行以上语句之后再执行:FLUSHPRIVILEGES; ......
  • [C++基础] 面向对象、C 与 C++ 区别篇
    [C++基础]面向对象、C与C++区别篇 一、面向对象1面向对象与面向过程的含义?1、面向对象面向对象是把数据及对数据的操作方法放在一起,作为一个相互依存的整体,即对象。对同类对象抽象出其共性,即类,类中的大多数数据,只能被本类的方法进行处理。类通过一些简单的外部接口与......
  • 深度学习基础入门篇[六(1)]:模型调优:注意力机制[多头注意力、自注意力],正则化【L1、L2,D
    1.注意力机制在深度学习领域,模型往往需要接收和处理大量的数据,然而在特定的某个时刻,往往只有少部分的某些数据是重要的,这种情况就非常适合Attention机制发光发热。举个例子,图2展示了一个机器翻译的结果,在这个例子中,我们想将”whoareyou”翻译为”你是谁”,传统的模型处理方式是......
  • Docker安装MySQL
    创建挂载目录mkdir-p/app/mysql&&cd$_docker安装MySQLdockerrun-d-p3306:3306--privileged=true-v/app/mysql/log:/var/log/mysql-v/app/mysql/data:/var/lib/mysql-v/app/mysql/conf:/etc/mysql/conf.d-eMYSQL_ROOT_PASSWORD=123456--namemysql5.7......
  • 实验三 控制语句与组合数据类型应用编程
    实验任务1源代码1importrandom23print('用列表存储随机整数:')4lst=[random.randint(0,100)foriinrange(5)]5print(lst)67print('\n用集合存储随机整数:')8s1={random.randint(0,100)foriinrange(5)}9print(s1)1011print('\n用集合存......
  • Mysql Mybatis 批量修改数据
    MysqlMybatis批量修改数据MapperIntegerupdateListPO(List<ProjectQuotationItemPO>upateList);方法一:<updateid="updateListPO"><foreachcollection="list"separator=";"item="item">UPDATEpro......
  • Vue基础知识
    模板语法文本插值(textinterpolation)最基本的数据绑定形式,使用“Mustache”语法即{{...}}<span>Message:{{msg}}</span>{{}}中的值会被替换为相应组件实例中msg属性的值,且会同步地更新原始HTML<p>Message:<spanv-html="msg"></span></p>这里的v-html被称为指令Attrib......