SQL基础介绍

1. 基本语法

SQL(Structured Query Language)结构化查询语言,通过SQL,我们就可以查询数据库中的数据,而数据再数据库中又是以表的形式保存的,所以SQL查询,主要就是对表进行查询。

SQL的语法就和学习英语的语法、汉语拼音一样,满足给定的套路,去使用就可以了。

当我们拿到了数据库的连接信息,连接到一个数据库上,我们就可以开始写SQL了。

简单介绍客户端Navicat的使用

菜单-新建连接
新建连接

这一个一个圆柱形的,就是一个数据库实例,下面那些电子表格图标的就是表,数据就存储在表中。

数据库及表

使用Navicat查看表结构信息,介绍下表、字段、注释等

对象信息
表结构信息

select

下面,我们来看看,怎样查看一张表的数据;SQL的语法呢,就好比是一个公式,初学的话我们去套用就可以了。

SELECT 列名称 FROM 表名称
或者
SELECT * FROM 表名称

使用Navicat执行查询

-- 查看学生表数据,指定字段
select s_id,s_name from t_student;
学生表数据
-- 查看所有字段
select *from t_student;
学生表数据

排序

排序是很常用的功能,我们想要对结果集进行指定的排序,就要使用order by

order by 字段名

默认升序,可以使用desc降序排列

-- 学生ID降序排列
select *from t_student order by s_id desc;
降序排列

多字段排序

-- 班级ID升序排列,班级ID一样的按学生ID降序排列
select *from t_student order by c_id,s_id desc;
多字段排序

limit

指定返回记录的数目

我们上面,都是查询一张表所有的数据,有的时候表的数据量很大,或者我们只想看看排名前3的数据,我们就可以使用limit

-- 学生ID降序排列,取前3条记录
select *from t_student order by s_id desc limit 3;
limit

where

前面,我们可以查看一张表的所有数据、做排序、然后只取前几行,实际使用时,一定会有这样的需求,比如我们只想看学生ID是105的记录,就需要使用where了,它可以对数据进行过滤。

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

常用的运算符.png
-- 查看学生ID是105的学生信息
select *from t_student where s_id = 105;

-- 查看学生ID不是105的其他学生信息
select *from t_student where s_id <> 105 ;

-- 查看学生ID在103和108之间的学生信息
select *from t_student where s_id between 103 and 108;

这里还有一个操作符很常用,就是 in 和 not in。
in 表示在多个值中存在,加上not则表示不存在

-- 查看学生ID是103,105,,107的学生信息
select *from t_student where s_id in (103,105,107);

-- 查看学生ID不在102中的其他学生信息
select *from t_student where s_id not in (102);

like

匹配字符串,像‘xxxx’一样

%: 表示任意个或多个字符
_:表示任意单个字符

-- 查看喜欢吃肉的学生信息
select *from t_student where s_hobby like '吃肉%';
select *from t_student where s_hobby like '%吃肉%';
like使用

and 和 or

上面,我们都是一个单独的过滤条件,实际上,我们的会有各种各样的情况,需要同时满足多种过滤条件,这就用到了 and 和 or。

AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

-- 查看班级ID是901的所有男生信息
select *from t_student where c_id=901 and s_gender=0;

-- 查看班级ID是901或者s_id大于107的学生信息
select *from t_student where c_id=901 or s_id > 107;

流程控制

关联查询

?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,100评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,308评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,718评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,275评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,376评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,454评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,464评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,248评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,686评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,974评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,150评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,817评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,484评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,140评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,374评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,012评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,041评论 2 351

推荐阅读更多精彩内容

  • MYSQL 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 MySQL基本操...
    Kingtester阅读 7,796评论 5 116
  • SQL基础介绍 1. 基本语法 SQL(Structured Query Language)结构化查询语言,通过S...
    小数点数据咨询阅读 647评论 0 1
  • 建立良好的心理指导关系五因子 1.尊重:信任是尊重的前提,尊重就是无条件接纳一切,既接纳光明又接纳灰暗,这是指导师...
    申雨然123123阅读 90评论 0 0
  • CSS全称为“层叠样式表 (Cascading Style Sheets)”,它主要是用于定义HTML内容在浏览器...
    神游加发呆阅读 139评论 0 1