数据库常见查询语句_数据库检索语句

数据库常见查询语句_数据库检索语句常用数据库查询语句基本查询select字段1,字段2,…from表名;例如:selectid,namefromstu;条件查询select字段1,字段2,…from表名where字段关系符号值;关系符号<=>=<=!=大于等于大于等于小于等于不等于例如:select*fromstuid>2;andorin(范围内满足in内部条件)

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

数据库常用查询语句(DQL)

基本查询

select 字段1, 字段2,…from 表名;

例如:select id , name from stu;

条件查询

select 字段1, 字段2,…from 表名 where 字段 关系符号 值 ;

关系符号

< = >= <= != 大于 等于 大于等于 小于等于 不等于

例如:select * from stu id > 2;

and or in(范围内满足in内部条件) not in 相反

例如: select * from stu where id>1 and age <40;

​ select * from stu where id >1 or name =‘张三’;

​ select * from stu where id in(3,4);

between 值1 and 值2 在[值1,值2]之间 包含两边临界值

例如: select * from stu where id between 2 and 4;

模糊查询

select * from 表名 where 字段 like ‘%值%’;

例如: select * from stu where name like ‘陈%’;

注: %的位置不同 表达的意思不同 陈% : 陈某某 ,%陈% : 某陈某,%陈:某某陈

% 匹配任意字符 (%可以是任意长度)_匹配指定长度字符 一个_代表一个长度

排序查询

select * from 表名 order by 字段 排序类型 asc 升序 desc 降序 没写排序类型 默认 升序

例: select * from stu order by id desc ;

聚合函数 多行数据一行返回

count(字段) 计数 计算该列不为空的数据个数

例 :select count(name) from stu;

sum(字段) 求和 计算该列所有数字的和 字符串求和结果为0

例:select sum(age) from stu;

max(字段) 最大值 获取该列最大值

例: select max(age) from stu;

min(字段) 最小值 获取该列最小值

例: select min(age) from stu;

avg(字段) 平均值 不为null的进行平均

例: select avg(age) from stu;

注:聚合函数要放在select 和 from 之间

去重

distinct(列) 一般配合count()一起使用

例;:select count(distinct 字段名) from stu;

分组查询

group by

例:select * from stu group by 字段名

流程控制函数

if(expr1,expr2,expr3)

​ 如果 expr1 为真 则返回expr2, 否则返回expr3

​ is null() 函数 判断为空

​ is null(字段) 如果是null 返回1 不是返回0

例:select id name if(isnull(score)=1,‘缺考’,score)from stu;

case

when 条件 then 执行语句

when 条件 then 执行语句

else 执行语句

end

执行第一个when后的条件,如果为true,执行then后的语句,

如果when后的条件为false,执行第二个when后的条件

如果都为flase 执行else后的语句

多表联查

1 联合查询-合并结果集

union 将两表的查询结果纵向连接(会去重)

union all 纵向拼接会保留全部

2 连接查询

将多个表多行数据相乘(笛卡尔积).

一对一: 在任何一张表添加字段均可

一对多:只能在多的表添加字段

多对多:定义中间表

连接方式:

内连接: select * from 表1 inner join 表2 on 关联条件(过滤条件);

​ 简写: select * from 表1,表2 where 表1.字段名 = 表2.字段名;

注:只会保留完全符合关联条件的数据

外连接: select * from

​ 左外连接: select * from 表1 left [outer] join 表2 on 表1.字段名 = 表2.字段名

​ 注:会保留左表中不符合条件的数据

​ 右外连接: select * from 表1 right [outer] join 表2 on 表1.字段名 = 表2.字段名

​ 注:会保留右表中不符合条件的数据

​ 注:会保留不满足条件的数据

子查询

子查询就是嵌套查询.

一般子查询出现在:

​ from后 : 当做一张表使用

​ where后: 当做条件使用

​ select 后

自连接:

自己连接自己

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195890.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python进制的转换「建议收藏」

    Python进制的转换「建议收藏」Python整数能够以十六进制,八进制和二进制来编写,作为一般以10位基数的十进制计数法的补充。一:上面三种进制的常用表示>>>0o1,0o20,0o377#八进制常

    2022年7月6日
    33
  • 阿里矢量图标_ui矢量图

    阿里矢量图标_ui矢量图阿里iconfunt官网对于图标的调用写的不够详细,许多初用者不会用,下面具体介绍下总结的两种方法:一、在线调用方式1、首先建立新浪微博账号,用微博号登录iconfunt官网;2、所需要图标加入

    2022年8月1日
    7
  • git 拉取远程分支到本地及本地切换分支

    拉取远程分支到本地及本地切换分支涉及的操作内容1.远程代码拉取到本地-2.本地合并其它分支代码-3.本地代码提交到远程指定仓库-4.本地切换分支1.远程代码拉取到本地首先确定要切换分支,查看当前本地及远程所有分支gitbranch-a红色为远程分支,白色为本地分支“*”为本地当前分支下面我们来切换一下远程分并在本地创建远程分支gitcheckout-b本地分支名origin/远程分支名远程代码拉取到本地已完成下面确认一下时代码记录gitlog/

    2022年4月7日
    1.4K
  • 什么是OJ _OJ是什么?[通俗易懂]

    什么是OJ _OJ是什么?[通俗易懂]OnlineJudgeSystem即在线评测系统(以下简称OJ),用户可以在线的提交程序源代码,OJ会对这些源代码进行编译和运行,并且通过每道题目预先设计的数据和时空限制等标准来检验用户程序的正确性。用户提交的程序在OJ下执行的时候会受到严格的限制,包括且不限于时间的限制、内存的限制、系统接口的限制和安全限制。用户程序执行的输出结果会被OJ接收并保存,然后通过裁判程序进行比较用户输出和标…

    2022年6月15日
    42
  • java官网下载「建议收藏」

    java官网下载「建议收藏」安装版http://javadl.oracle.com/webapps/download/AutoDL?BundleId=234471_96a7b8442fe848ef90c96a2fad6ed6d1win64http://javadl.oracle.com/webapps/download/AutoDL?BundleId=234474_96a7b8442fe848ef90c96a2f…

    2022年7月7日
    34
  • 对象转map(object转map)

    对象转map(object转map)importjava.lang.reflect.Field;importjava.util.LinkedHashMap;importjava.util.Map;publicclassObjectToMap{//对象转MappublicstaticMap<String,Object>getObjectToMap(Objectobj)t…

    2022年5月16日
    53

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号