SQL常用语句总结

前言

这篇博客,南国主要用来复习归纳关于SQL语句的一些基础知识。
数据查询(DQL):用来查询记录。
数据定义(DDL): 用来定义数据库对象,库 表 列等,简单说就是用来创建、修改、删除数据库。
数据操纵(DML): 用来定义数据库的记录,简单说就是对数据进行增删改查。
数据控制(DCL): 用来定义访问和安全级别

SQL功能 SQL关键字
数据查询 select
数据定义 create drop alter
数据操纵 insert update delete
数据控制 grant revoke

本博客的内容主要是在MySQL 5.x下执行的结果。

模式Schema

模式定义了数据如何存储、存储什么样的数据以及数据如何分解等信息,数据库和表都有模式。

主键的值不允许修改,也不允许复用(不能使用已经删除的主键值赋给新数据行的主键)。

SQL(Structured Query Language),标准 SQL 由 ANSI 标准委员会管理,从而称为 ANSI SQL。各个 DBMS 都有自己的实现,如 PL/SQL、Transact-SQL 等。

SQL 语句不区分大小写,但是数据库表名、列名和值是否区分依赖于具体的 DBMS 以及配置。

SQL 支持以下两种注释:

  • 单行注释 select * from account; #注释
  • 多行注释 select * from account;
    /* 注释

    */

数据库的显示 创建 使用

  • 显示: show databases;
  • 创建: create database test;
  • 使用: use test;

数据表中的操作

为了方便我们后续的SQL语句操作,我们在我们选定的数据库中新建一张表,并且插入相应的数据 显示出来。

创建表

CREATE TABLE `account` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT NULL,
  `money` double DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

首先在表中插入对应的数据用于测试:

INSERT INTO `account` VALUES ('1', 'aaa', '1000');
INSERT INTO `account` VALUES ('2', 'bbb', '1000');
INSERT INTO `account` VALUES ('3', 'ccc', '1000');

数据查询

在SQL语句中,查询较为重要。select 是数据显示的出口,这里南国将所有能想到的在select语句用到的知识点都归纳在这一小节中。
select [all | distinct] <目标表达式>[,<目标表达式>]…
from <表名或者视图名>[,<表名或者视图名>]…
[where <条件表达式>]
[group by <列名1>] [having<条件表达式> ]]
[order by <>列名2] [ASC | DESC]];

下面进行归纳总结:

1.这里先选用最简单的查询所有属性的值 (*)
select * from account;

运行结果:
在这里插入图片描述

2.还可将一个表中的内容插入到一个新表中

CREATE TABLE newtable AS SELECT * FROM mytable;

3.去重distinct

相同值只会出现一次。它作用于所有列,也就是说所有列的值都相同才算相同。当然这种情况很少【至少每行的主键值不同 一般是id】,一般而言 我们是看数据表中某些行的数据。如下:
select money from account; #查看某个属性的数据
在这里插入图片描述
select distinct money from account; #查看某个属性去重后的数据
在这里插入图片描述

4. limit 限制返回的行数

他可以有两个参数,第一个参数为起始行,从 0 开始;第二个参数为返回的总行数。
例如:
1.select * from account limit 5; #查询表中前5行数据
它等同于 select * from account limit 0,5;
2.select * from account limit 3,5; #查询表中第4行到9行的数据

4.1分页查询

(2019.04.07更新)
在日常应用中,我们经常会提到一个词叫分页查询。
如果一页记录为10条,希望查看第3页记录应该怎么查呢?

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值