案例所使用表字段介绍:
语法
select 查询列表 from 表名;
类似于:System.out.println(打印东西);
特点
注意事项
需求 | 语句 | 解释说明 |
---|---|---|
查询表中的单个字段 | select 字段 from 表名; | — |
查询表中的多个字段 | select 字段1,字段2 from 表名; | — |
查询表中的所有字段 | select * from 表名; | 缺点是:列之间的顺序是固定的;当想按照另一种顺序显示的时候,则需要将列名都写出来。 select last_name,email,job_id,phone_number from employees |
查询常量值 | select xxxx; | 字符串和字符一样,都使用单引号。 字符型和日期型的常量值必须用单引号引起来,数值型不需要。 |
查询表达式 | select 100*90; | 加减乘除取模 |
查询函数 | select 函数名(实参列表); 其中函数是必须有返回值的。 |
相当于执行了两步:函数的执行 和 查询函数的返回值。 |
起别名 | select 100%98 as 结果 使用as关键字 select 100%98 (空格) 结果 as可以省略 |
好处:①便于理解;②如果要查询的字段有重名的情况,使用别名可以区分开来。 select salary “out put” from employees; 当别名出现的特殊字符(空格)的时候,需要别名加双引号 |
去重 | select distinct 字段 from 表; | 字段名只能写一个,表示该字段的值不能重复 |
+号 的作用 | mysql中的+号:仅仅是运算符; ①select 100+90;两个操作数都为数值型,则做加法运算。 ②select ‘100’+90;只要其中一方是字符型,试图将字符型转换为数值型;如果转换成功,则继续做加法运算。 ③select’join’+90;如果转化失败,则将字符型数值转换为0. ④select null + 90;只要其中一方为null,则结果肯定为null。 |
java中的+号作用:①运算符,两个操作数都为数值型;②连接符,只要有一个操作数为字符串; |
拼接字符 concat(字符1,字符2…) | select concat(字符1,字符2…) | 案例:查询员工名和姓连接成一个字段,并显示为姓名。 select concat(last_name,first_name) as 姓名 from employees 使用concat函数对字符进行连接 |
ifnull函数 | ifnull(字段或表达式,指定值) | 判断某字段或表达式是否为null 如果为null,则返回指定的值;反之,返回原本的值。 |
isnull函数 | isnull(字段或表达式) | 判断某字段或表达式是否为null 如果为null,则返回1;反之,返回0. |
ifnull(字段或表达式,指定值)
测试案例1-3
desc 表名; select * from 表名;
select 查询列表 from 表名 where 筛选条件;
要求筛选条件的最终结果是true或false
执行顺序:from→where→select
条件运算符
小于 < 小于等于<= 大于> 大于等于>= 等于= 不等于<> 安全等于<=>
说明2022/7/29
等于=
用于比较两边的操作数是否相等,相等返回1,不相等返回0;共有两个操作数。
操作数 | 结果 |
---|---|
一个或两个为null | 结果为null |
两个都是字符串 | 比较字符串 |
两个都是整数 | 按照整数比较 |
一个字符串、一个数字 | MySQL自动将字符串转换为数字 再进行比较 字符转数字失败,转换为0 |
安全等于 < = >
可以比较 字符串、数字、null值
操作数 | 结果 |
---|---|
两个操作数都是nulll | 结果为1 |
一个操作数是null | 结果为0 |
案例
作用:用于连接条件表达式
符号 | 说明 |
---|---|
and && |
两个条件都为true,结果为true;反之,为false |
or || |
有一个为true,结果为true;反之,为false |
not ! |
如果连接的条件本身为false,结果为true;反之,为false |
案例
关键词:like、between and、in、is null 或者 is not null 、<=> 安全等于
关键词 | 说明 |
---|---|
like | 一般和通配符搭配使用,用于判断字符型或者数值型。 通配符:% 任意多个字符,包括0个字符; _ 任意单个字符 注:可以使用escape来任意指定转义字符,默认情况下是\。 |
between and | between 值1 and 值2;在值1和值2之间,即值1<= 字段 <= 值2 特点:①使用between and 可以提高语句的简洁度;②包含临界值; 两个临界值不要调换顺序。因为下面两者是等价的。 #where employee_id between 100 and 120; #where employee_id>=100 and employee_id<=120; |
in | 含义:判断某字段的值是否属于in列表中的某一项 特点:①使用in提高语句简洁度;②in列表的值类型必须统一或兼容;③不支持通配符; |
is null is not null |
= 和 <> 不能用于判断null值; is null 和 is not null 用于判断null的值; |
< = > 安全等于 |
判断是否等于。可以是null,也可以是数值型。 缺点:可读性比较差。 |
is null 和 < = > 比较
关键词 | 普通的数据(如 数值型) | null类型 | 可读性 |
---|---|---|---|
is null | 不支持 | 支持 | 较好 |
< = > | 支持 | 支持 | 较差 |
案例:like、 between and、 in
案例 is null 、is not null 、安全等于
测试题
注意
2022/4/14 |
---|
关于sql语句中的单引号和双引号问题 |
双引号和单引号问题
如果操作的是字符串类型常量,则需要在字符串两侧加单引号;
如果使用是的变量,则需要使用双引号;
字符串类型常量
'汪苏泷'
字符串类型变量,将字符串常量去掉、添加双引号、在添加连接符&、再放入变量
' “ & 变量 & ” '
作用:为了实现查询内容的有序显示
语法
select 查询列表 from 表名
【where 筛选列表】
order by 排序列表【asc | desc】;
asc 表示升序,desc 表示降序
ascend 升序,descend 降序;
特点
asc表示的是升序,desc表示的是降序;如果不写,默认为升序;
order by 子句中支持单个字段(字段)、多个字段(字段1,字段2)、表达式(salary *12 )、函数、别名;
order by 子句一般都是放在查询语句的最后面,但是limit子句除外;
执行顺序:from→where→select→order by ;
文章浏览阅读1.9k次。基于均值迁移的对象移动分析(Meanshift)️ ️概述本质:️ Mean Shift均值漂移算法是无参密度估计理论的一种,无参密度估计不需要事先知道对象的任何先验知识,完全依靠训练数据进行估计,并且可以用于任意形状的密度估计,在某一连续点处的密度函数值可由该点邻域中的若干样本点估计得出。直观的理解:️ 一堆点集,一个圆形的窗口在不断的移动,移动的方向是沿着点的密度最大的区域移动,图示如..._通过图像计算目标运动
文章浏览阅读563次。本章主要讲解了防火墙的相关知识,包括基本概念,技术类型,安全区域,状态检测等。还包含FTP协议的有关概念以及ASPF技术。_防火墙策略里local区域
该文章为程序代码,主要包括使用C++和C语言解决问题的代码片段。
文章浏览阅读600次,点赞12次,收藏11次。随着移动互联网的普及和用户消费习惯的改变,越来越多的内容创作者和企业开始注重短视频矩阵系统的建设。短视频矩阵系统具有多平台、多账号、多内容的特点,能够实现多角度、多层次的内容覆盖,提高品牌曝光度和用户粘性。随着短视频市场的成熟,商业模式创新将成为短视频矩阵系统可持续发展的重要保障。未来,短视频平台将探索更多元化的盈利模式,如广告投放、付费观看、打赏等,实现创作者、平台和用户的共赢。本文将探讨短视频矩阵系统的发展趋势和未来展望,以期为相关行业的发展提供有益的参考。三、短视频矩阵系统的未来展望。
文章浏览阅读1k次。针对海量影像地图,采用地理处理建模构建切片业务流程,并应用“基于金字塔算法生成瓦片”的方案实施更高效的影像地图瓦片生产。_瓦片数据库生产
文章浏览阅读1.3w次。1、问题产生的原因Oracle 是大小写敏感的,我们创自己写Sql脚本创建表的时候Oracle会自动将我们的表名,字段名转成大写。2、问题分析但是 Oracle 同样支持"" 语法,将表名或字段名加上""后,Oracle不会将其转换成大写。如果加上了"",那么我们采用一般的SQL语句查询则会产生“ORA-00942: 表或视图不存在 ”,因此SQL脚本中需要将表名也加上""。例如:select*..._ora00942表或视图不存在,但明明存在
文章浏览阅读6k次,点赞3次,收藏12次。代码如下#include&lt;stdio.h&gt;#include&lt;math.h&gt;#include&lt;string.h&gt;int main(){ int n,i,j,k,len,t; int b[10],c[10]; scanf("%d",&amp;n); char a[10][99]; for(i_十六进制转换成八进制代码
文章浏览阅读79次。根据历史数据建立模型,使用深度神经网络(DNN)训练模型,以预测股市走势:import numpy as npimport tensorflow as tf# 准备数据X = np.array([[1, 2, 3], [4, 5, 6]])y = np.array([7, 8])# 创建模型model = tf.keras.models.Sequential()model.add(tf...._深度学习股票预测代码
文章浏览阅读2k次,点赞60次,收藏42次。updatedb(update database)命令用于更新locate命令使用的文件名数据库。如果数据库已经存在,它的数据会被重用,以避免重新读取未改变的目录。updatedb通常由cron每日运行,以更新默认数据库。
文章浏览阅读1.1w次,点赞198次,收藏195次。一、配置hadoop格式化二、查看 Java 进程三、查看 HDFS 的报告_查看相应的jvm验证hadoop是否启动成功
文章浏览阅读370次。Docker学习总结Docker简介Docker 使用客户端-服务器 (C/S) 架构模式,Docker的守护进程运行在主机上。通过Socket从客户端访问Docker为什么比虚拟机快Docker比虚拟机的抽象层更少Docker共享操作系统内核,每个VM都包含一整套操作系统新建一个容器时,Docker不需要像虚拟机一样重新加载一个操作系统内核,避免了引导操作Docker镜像运行流程Docker安装Nginx执行docker search nginx查询是否有nginx镜像,推荐_docker 的学习心得
文章浏览阅读1w次,点赞35次,收藏163次。在设计电路的过程中经常会遇到这样的问题:无法快速找到合适的元器件原理图封装和PCB封装(Footprint),通常最基本的做法是百度找找别人分享的资源,或者自己按照尺寸绘制。这样做法效率较低,影响到项目的开发进度,本篇博文将分享三个小技巧,帮助硬件朋友快速设计元器件封装。_贸泽电子