SQL基础教程(第2版)第6章 函数、谓词、CASE表达式:6-1 函数

所谓函数,
就是输入某一值得到相应输出结果的功能,输入值称为参数(parameter),
输出值称为返回值。



算术函数

为了学习算术函数,我们首先根据代码清单 6-1 创建一张示例用表
(SampleMath)。

由于 PostgreSQL 中的 ROUND函数只能使用 NUMERIC 类型的数据,因此我们在示例中也使用了该数据类型。

--Mysql
--DDL:创建表
CREATE TABLE SampleMath
(m  NUMERIC (10,3),
 n  INTEGER,
 p  INTEGER);

--DML:插入数据
START TRANSACTION;

INSERT INTO SampleMath(m, n, p) VALUES (500,  0,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (-180, 0,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (NULL, NULL, NULL);
INSERT INTO SampleMath(m, n, p) VALUES (NULL, 7,    3);
INSERT INTO SampleMath(m, n, p) VALUES (NULL, 5,    2);
INSERT INTO SampleMath(m, n, p) VALUES (NULL, 4,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (8,    NULL, 3);
INSERT INTO SampleMath(m, n, p) VALUES (2.27, 1,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (5.555,2,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (NULL, 1,    NULL);
INSERT INTO SampleMath(m, n, p) VALUES (8.76, NULL, NULL);

COMMIT;

--确认表中的内容
SELECT * FROM SampleMath;

--Mysql

■ ABS——绝对值
ABS 是计算绝对值的函数。 绝对值(absolute value)不考虑数值的符号,表示一个数到原点的距离。 

■ MOD——求余

■ ROUND——四舍五入



字符串函数
在日常生活中,我们经常会像使用数字那样,对字符串进行替换、截
取、简化等操作,因此 SQL 也为我们提供了很多操作字符串的功能。

为了学习字符串函数,我们再来创建一张表(SampleStr),参见代码清单 6-5。

--MySQL
--DDL:创建表
CREATE TABLE SampleStr
(str1  VARCHAR(40),
 str2  VARCHAR(40),
 str3  VARCHAR(40));

--DML:插入数据
START TRANSACTION;

INSERT INTO SampleStr (str1, str2, str3) VALUES (‘opx‘,            ‘rt‘    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘abc‘    ,    ‘def‘    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘山田‘    ,    ‘太郎‘  ,    ‘是我‘);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘aaa‘    ,    NULL    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (NULL    ,    ‘xyz‘,            NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘@!#$%‘,    NULL    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘ABC‘    ,    NULL    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘aBC‘    ,    NULL    ,    NULL);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘abc太郎‘,    ‘abc‘    ,    ‘ABC‘);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘abcdefabc‘,   ‘abc‘    ,    ‘ABC‘);
INSERT INTO SampleStr (str1, str2, str3) VALUES (‘micmic‘,          ‘i‘,        ‘I‘);

COMMIT;

--确认表中的内容
SELECT * FROM SampleStr;

--MySQL


原文地址:https://www.cnblogs.com/MarlonKang/p/12230915.html

时间: 2024-11-13 17:46:24

SQL基础教程(第2版)第6章 函数、谓词、CASE表达式:6-1 函数的相关文章

Ajax本地跨域问题 Cross origin requests are only supported for HTTP(针对jQuery基础教程第四版第六章)

出现的问题: 解决的步骤: 谷歌浏览器出现的效果: 针对jQuery基础教程(第四版),第六章  成功: 原文地址:https://www.cnblogs.com/qinghui258/p/8432569.html

[SQL基础教程.第3版](冯宇晖&贾文峰)PDF版

链接:https://pan.baidu.com/s/1gNUholoLdE4JPQakzs3eDg 原文地址:http://blog.51cto.com/13929572/2175890

笔记-Python基础教程(第二版)第一章

第一章 快速改造:基础知识 01:整除.乘方 (Python3.0之前 如2.7版本) >>> 1/2 ==>0 1/2整除,普通除法: 解决办法1: 1.0/2.0  ==>0.5 解决办法2:from _future_ import division 1/2  ==>0.5 // 表示整除 >>>1//2 ==>0 浮点数//浮点数,结果依然是整除结果 >>>1.0//2.0 ==>0.0 实际操作截图: ** 表示乘

python基础学习笔记——Python基础教程(第2版 修订版)第一章

#模块 import math math.floor(9) from math import sqrt sqrt(9) #无需使用前缀 import cmath cmath.sqrt(-1) #不能使用from...inport #转义和单双引号 >>>"\"hello,word\"she said" '"hello,word"she said' #使用print不显示引号 #拼接字符串  + #输入 input raw_inp

python基础学习笔记——Python基础教程(第2版 修订版)第二章(列表和元祖)

#列表可修改,元祖不能 A=['sdsd',43] B=['sds',45] C=[A,B] #分片 : - #list函数 #分片赋值 #列表方法 lst.append(4) x.count(1) x.count([1,2]) a.extend(b) a.index("w") a.insert(3,"都")x.removex.reversex.sort #pop 移除列表元素,并返回值.实现数据结构-栈,LIFO(后进先出),x.append(x.pop()),先

jQuery基础教程(第四版)第3章练习:

关于答案: // // (1) 在Charles Dickens被单击时,给它应用 selected 样式.$(document).ready(function() { $('#header').on('click',function() { $('.author').addClass('selected') });}) // (2) 在双击章标题( <h3 class="chapter-title"> )时,切换章文本的可见性.$(document).ready(func

jQuery基础教程(第四版)第4章练习:

关于答案: // (1) 修改样式表,一开始先隐藏页面内容,当页面加载后,慢慢地淡入内容:$(document).ready(function() { $('body').hide().fadeIn(4000);}) // (2) 在鼠标悬停到段落上面时,给段落应用黄色背景:$(document).ready(function() { $('p').mousemove(function(event) { //鼠标进入的时候 $(this).css('background','yellow');

SQL基础教程(第2版)第3章 聚合与排序:3-1 对表进行聚合查询

聚合函数 COUNT: 计算表中的记录数(行数)SUM: 计算表中数值列中数据的合计值AVG: 计算表中数值列中数据的平均值MAX: 求出表中任意列中数据的最大值MIN: 求出表中任意列中数据的最小值 计算NULL之外的数据的行数 该特性是 COUNT 函数所特有的,其他函数并不能将星号作为参数(如果使用星号会出错).  计算合计值 对于 SUM 函数来说,即使包含 NULL,也可以计算出合计值. 计算平均值 使用聚合函数删除重复值(关键字DISTINCT) SQL基础教程(第2版)第3章 聚合

SQL基础教程(第2版)第3章 聚合与排序:3-3 为聚合结果指定条件

HAVING子句 HAVING子句的构成要素 笔者认为,聚合键所对应的条件还是应该书写在 WHERE 子句之中.理由有两个.首先,根本原因是 WHERE 子句和 HAVING 子句的作用不同.如前所述, HAVING 子句是用来指定“组”的条件的.因此,“行”所对应的条件还是应该写在 WHERE 子句当中.这样一来,书写出的 SELECT 语句不但可以分清两者各自的功能,理解起来也更加容易. WHERE 子句 = 指定行所对应的条件HAVING 子句 = 指定组所对应的条件其次,对初学者来说,研

SQL基础教程(第2版)第4章 数据更新:4-3 数据的更新(UPDATE)

● UPDATE语句可以将列的值更新为NULL.● 同时更新多列时,可以在UPDATE语句的SET子句中,使用逗号分隔更新对象的多个列. 指定条件的UPDATE语句(搜索型UPDATE) SET 子句中赋值表达式的右边不仅可以是单纯的值,还可以是包含列的表达式. 使用NULL进行更新 使用 UPDATE 也可以将列更新为 NULL(该更新俗称为 NULL 清空).此时只需要将赋值表达式右边的值直接写为 NULL 即可. 多列更新 SQL基础教程(第2版)第4章 数据更新:4-3 数据的更新(UP