SQL_3_表达式、条件语句与运算

加号的两种用法:
1.在SELECT子句中使用+号以执行对数据的运算并将结果显示出来。
SELECT ITEM WHOLESALE WHOLESALE+0.15 FROM PRICE;

还可以重命名新增的列

2.在WHERE子句中使用加号,在WHERE子句中使用操作符可以在当你对数据有特定条件时具有更大的灵活性
减号也同样有两种用途
1.第一种作为负号使用

SELECT STATE -HIGHTEMP LOWS, -LOWTEMP HIGHS FROM HILOW;

2.作为减号,从某一列中减去另一列
SELECT STATE,HIGHTEMP LOWS,LOWTEMP HIGHS,(LOWTEMP-HIGHTEMP) DIFFERENCE FROM HILOW;

在数据库领域内NULL的意义就是在一个字段中没有数据,这与字段为零或者为空不是同一个概念,零和空是一种特殊的数值,而NULL则表示啥也没有。如果你想进行Field=9的比较而Field字段是空的,那么比较的结果就会返回Unknow。由于Unknow是一种不正常的状态,所以大多数SQL都会置其为无效并提供一种叫IS NULL的操作来测试Null的存在。
!=和<>都表示不等于
LIKE: 模糊匹配,且对大小写敏感,正如当初所说的涉及到数据时总是大小写敏感的。

SELECT * FROM PARTS WHERE LOCATION LIKE '%BACK%';

当查找在某一特定位置上有字符的数据时,可以使用通配符_下划线。
查找以A开头的:SELECT * FROM PARTS WHERE LOCATION LIKE 'A_';
查找第二个字母为L的记录:SELECT * FROM PARTS WHERE LOCATION LIKE '_L%';


SELECT LASTNAME || ',' || FIRSTNAME NAME FROM FRIENDS;

逻辑运算

找出B开头的员工,且休假时间超过了50天的员工:
SELECT LASTNAME,YEARS*12-LEAVETABKEN REMAINING FROM VACATION WHERE LASTNAME LIKE 'B%' AND YEARS*12-LEAVETABKEN >50;

OR:或者
NOT:取反。SELECT * FROM PARTS WHERE LOCATION NOT LIKE '_L%';
SELECT * FROM PRICE WHERE WHOLESALE IS NOT NULL;
集合操作:
两个执勤人员表FOOTBALL和SOFTBALL:


UNION: 将返回两个查询的结果并去除其中的重复部分。
查看 表中有哪些不重复的人员:SELECT NAME FORM FOOOTBALL UNION SELECT NAME FROM SOFTBALL;
查看表中共有多少人,包括重复的:SELECT NAME FORM FOOOTBALL UNION ALL SELECT NAME FROM SOFTBALL;
INTERSECT(相交):返回两个表中共有的行。
查看两个表中都存在的人员:SELECT * FROM FOOTBALL INTERSECT SELECT * FROM SOFTBALL;
MINUS(相减):返回存在于第一个表中但不存在于第二个表中的记录。
查看不在垒球中的足球队员:SELECT * FROM FOOTBALL MINUS SELECT * FROM FOOTBALL;
IN:从属运算
查找在CO,CA,LA城市的朋友:SELECT * FROM FRIENDS WHERE STATE='CO' OR STATE='CA' OR STATE='LA';
等价于:SELECT * FROM FRIENDS WHERE STATE IN ('CO','CA','LA');
BETWEEN:从属运算
查找价格在0.25和0.75之间的记录:SELECT * FROM PRICE WHERE WHOLESALE>0.25 AND WHOLESALE<0.75;
等价于:SELECT * FROM PRICE WHERE WHOLESALE BETWEEN 0.25 AND 0.75
仍然是无问题不进步:
根据下表FRIENDS回答问题:

1.写一下查询返回数据库中所有名字以M 开头的每一个人。
SELECT * FROM FRIENDS WHERE LASTNAME LIKE "M%";
2.写一个查询返回数据库ST 为LA 且FIRSTNAME 以AL 开头的人。
SELECT * FROM FRIENDS WHERE ST="LA" AND FIRSTNAME="AL%";
3.给你两个表PART1 和PART2 你如何才能找出两个表中的共有元素请写出查询。
SELECT * FROM PART1 INTERSECT SELECT * FROM PART2;
4.WHERE a >= 10 AND a <=30 的更便捷写法是什么请写出来?
WHERE BETWEEN 10 AND 30
注意::不同的数据库对 BETWEEN...AND 操作符的处理方式是有差异的。至于包括不包括两头的值,还需要查询自己的数据库。
SQL_3_表达式、条件语句与运算的更多相关文章
- 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等
[源码下载] 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等 作者:webabcd 介绍不可或缺 Windows Native ...
- php简写表达式,&& or || 缩写条件语句
有时候学的多了, 好多小细节 都忘了 ,比如 简单的表达式, 三元表达式 ?:; $aa or $bb 表达式 等等! 写一些简单的表达式,备忘! php用&&和||缩写条件语句 ...
- var、符号运算、条件语句、三元(目)运算、自加和自减
1.var a=“hello world” a 这个变量是字符串了,对于里面的每一个字母来说,他是字节,里面有11个字节,(包括空格),字节总数用length表示 2.符号运算 + 字符串拼接 . ...
- 【C】 04 - 表达式和语句
程序的生命力体现在它千变万化的行为,而再复杂的系统都是由最基本的语句组成的.C语句形式简单自由,但功能强大.从规范的角度学习C语法,一切显得简单而透彻,无需困扰于各种奇怪的语法. 1. 表达式(exp ...
- python函数,lambda表达式,三目运算,列表解析,递归
一.自定义函数 定义函数时,函数体不执行:只有在调用函数时,函数体才执行.函数的结构: 1. def 2. 函数名 3. 函数体 def func_name(): 函数体 4. 返回值 如果没有声明返 ...
- 【C语言】07-基本语句和运算
一.基本语句 C语言的基本语句跟Java中的差不多,所以,这里只是简单地提一下 循环语句(do while.while.for) 条件语句(if .if-else.switch) goto语句 二.基 ...
- if条件语句
第四天 XMind 思维导图复习之前知识 数据类型-变量常量-运算符(表达式)-语句(顺序.分支.循环)-数组-函数 1.if语句格式 if(表达式) { 语句 } 注意: 1.如果,表达式成立,只执 ...
- Python成长之路第一篇(4)_if,for,while条件语句
有了以上的基本基础,已经上面写的几个小练习,大家肯定有很多的不满,比如查询为什么查询一次就退出了呢?下面我们来学习条件语句 一.万恶的加号 以前我们在print的时候如果要加上变量都有是使用+来作为连 ...
- 小猪猪C++笔记基础篇(五)表达式、语句
小猪猪C++笔记基础篇(五) 关键词:表达式.语句 本章的内容比较简单,基本上没有什么理解上的困难,都是知识上的问题.先开始想要不要写呢,本来是不准备写的,但是既然读了书就要做笔记,还是写一写,毕竟还 ...
随机推荐
- Linux之shell命令实现-批量去掉文件名中空格,以及批量修改文件名为数字序号文件名
1 shell下批量出去文件名中的空格 执行看现象: 上面的是执行for循环以后看到的: 然而源目录下的文件如下: 这样的话想要cat某个具体文件是拿不到的,所以需要去空格处理: 处理方式有很多:如 ...
- str中的join方法,fromkeys(),set集合,深浅拷贝(重点)
一丶对之前的知识点进行补充 1.str中的join方法.把列表转换成字符串 # 将列表转换成字符串,每个元素之间用_拼接 s = "_".join(["天",& ...
- [Loading Component]Loading组件的v-model设计是否不合理?
vue在2.4.2版本中给computed里的属性加了限制,详见assigning to a computed property without setter does not fail 项目将vue ...
- ABAP区别CLEAR、REFRESH、FREE
CLEAR.REFRESH.FREE 内表:如果使用有表头行的内表,CLEAR 仅清除表格工作区域.例如 clear gs-school 清除工作区. 要重置整个内表而不清除表格工作区域,使用REFR ...
- 干货|java缓存技术详解
一.缓存是什么? 请点击此处输入图片描述 Cache ①高速缓冲存储器,其中复制了频繁使用的数据以利于快速访问. ②位于速度相差较大的两种硬件/软件之间,用于协调两者数据传输速度差异的结构 二.缓存有 ...
- 2017微软骇客马拉松精彩大回Fun:不一样的Hacker,一Young的Cool
丹棱君有话说:一年一度激动人心的骇客马拉松大会结束了!这场内部创意大比拼硕果累累,丹棱君准备好了 6 组 Cool 骇客的别 Young 作品——沉浸式销售工具如何能守得“云”开见月明?“骇客马拉松超 ...
- Android商城开发系列(三)——使用Fragment+RadioButton实现商城底部导航栏
在商城第一篇的开篇当中,我们看到商城的效果图里面有一个底部导航栏效果,如下图所示: 今天我们就来实现商城底部导航栏,最终效果图如下所示: 那么这种效果是如何实现,实现的方式有很多种,最常见的就是使 ...
- 广播监听USB插入与拔出
package com.joy.usbbroadcastreceiver; import android.content.BroadcastReceiver; import android.conte ...
- opencv c++编译
g++ image2png.cpp -o test `pkg-config --cflags --libs opencv`
- python_98_面向对象_学校
class School(object):#以后都加object(基类) def __init__(self, name, addr): self.name = name self.addr = ad ...