基础SQL 函数

在MySQL中内置了很多函数,我们可以通过一段程序或者代码直接调用这个函数

一、字符串函数

下面通过例子来验证这些函数

-- 字符串函数-- concat函数
select concat("hello ","world");-- lower函数
select lower("HELLO");-- upper函数
select upper("heelo");-- lpad函数
select  lpad("123",5,'0');-- rpad函数
select rpad("123",5,'0');-- trim函数
select trim("   hello world  ");-- substring函数
select substring("1234556789",2,3);

实例说明:

统一一个表的员工工号,不足8位的在前面补0

先查看实例前的员工表

更新字段的值使用updat语句

数值函数

常见的数值函数有

-- 数值函数-- ceil函数
select ceil(4.5);-- floor函数
select floor(5.9);-- mod函数
select mod(100,2);-- rand函数
select rand();-- round函数
select round(3.1415926,3);

实例说明

生产一个随机的六位数的验证码

日期函数

-- 日期函数-- curdate函数 当前日期
select curdate();-- curtime函数 当前时间
select curtime();-- now函数 当前日期和时间
select now();-- year(date)函数 获取date的年份
select year(now());-- month(date)函数 获取date的月份
select month(now());-- day(date)函数 获取date的日期
select day(now());-- date_add(date,interval expr type)函数 返回一个日期/时间值加上时间间隔expr后的时间值
select date_add(now(),interval 30 day);  -- 30天后-- datediff(date1,datw2)返回起始时间date1和结束时间date2之间的天数
select datediff(curdate(),'1949-10-01');

现在有这样一张表

-- 查询所有员工的入职天数,并根据入职天数倒序排序
select name,datediff(curdate(), entrydate) '入职天数' from emp order by '入职天数' desc ;

流程函数

-- 流程函数-- if(value,t,f)函数 如果value为true,则返回t,否则返回f
select if(2>3,2,3);-- ifnull(value1,value2) 如果value1不为空,返回value1,否则返回value2
select ifnull(null,'hello');-- case when [val1] then [res1]...else [default] ebd函数
-- 如果val1为true,返回res1,... 否则返回default默认值
select case when 2+3>6 then '正确' else '错误' end;-- CASE [expr] WHEN [val1] THEN [res1] ... ELSE [ default ] END函数
-- 如果expr的值等于val1,返回res1,... 否则返回default默认值
select case 2 WHEN  3 then '对' else '错' end;

流程函数需要结合具体案例来分析使用

接下来,进行一下案例的分析

现在有一张员工表

查询emp表的员工姓名和工作地址 (北京/上海 ----> 一线城市 , 其他 ----> 二线城市)

sql语句怎么书写

select name,case workaddress when '北京' then '一线城市'when '上海' then '一线城市' else '二线城市' endas '工作地址' from emp;

例子2

有这样一个分数表

>=85优秀,>=60及格,<60不及格

select name,case when math>=85 then '优秀' when math>=60 then '及格' else '不及格' end '数学',case when  english>=85 then '优秀' when  english>=60 then '及格' else '不及格' end '英语',case when  chinese>=85 then '优秀' when  chinese>=60 then '及格' else '不及格' end '语文' from score;

总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/3369.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#基础|构造方法相关

哈喽&#xff0c;你好&#xff0c;我是雷工。 以下为C#方法相关的学习笔记。 01 方法的概述 概念&#xff1a;方法表示这个对象能够做什么&#xff0c;也就是封装了这个对象行为。 类型&#xff1a;实例方法—>静态方法&#xff08;抽象方法、虚方法&#xff09;—>特殊…

CSS画一条虚线,并且灵活设置虚线的宽度和虚线之间的间隔和虚线的颜色

CSS画一条虚线,并且灵活设置虚线的宽度和虚线之间的间隔和虚线的颜色。 先看效果图&#xff1a; 在CSS中&#xff0c;你可以使用border属性或者background属性来画一条虚线。以下是两种常见的方法&#xff1a; 方法一&#xff1a;使用border属性 你可以设置一个元素的border…

别再把ERP吹上天了,在中国根本没几家企业用得起来

ERP系统无疑具有诸多优势&#xff0c;然而&#xff0c;其在中国多年的应用实效如何&#xff0c;各界看法不一&#xff0c;尚无定论。 历经长达20余年的信息化探索&#xff0c;华为直至2016年才达成了“流程基本顺畅&#xff0c;账目与实际相符”的目标&#xff08;详见华为轮值…

张大哥笔记:如何选择一个好项目?

互联网已经改变了我们的日常生活&#xff0c;使我们可以便捷地获取信息&#xff0c;更快地完成工作&#xff0c;更有效地进行沟通&#xff0c;并且可以让我们更容易地获得服务。随着技术的发展&#xff0c;互联网将继续改变我们的生活.... 有时候我们会感叹&#xff0c;互联网发…

群组分析方法

目录 1.什么是群组分析方法 2.基本原理 3.群组分析方法分类 3.1.层次方法 3.2.划分方法 3.3.密度基方法 ​​​​​​​3.4.模型基方法 4.群组评估 5.应用步骤 1.什么是群组分析方法 群组分析&#xff08;Cluster Analysis&#xff09;是数据分析中的一种重要方法&…

VMWare vmdk文件非常大解决

你如果发现你的虚拟机占用了几百个GB的空间想要变小&#xff0c;在我使用电脑中有一个虚拟机放在了D盘的vm7.9文件夹中。D盘总容量为1TB,但是扯淡的是一个虚拟机占用了600多个GB空间&#xff0c;我按照下面流程执行了最终变为了使用200多GB。 虚拟机经过长时间使用以及各种操作…

北航计算机软件技术基础课程作业笔记【5】

题目 (文章一周后公开~) sort 1.快排算法 核心思路:选取(一般是)当前数组第一个元素作为中间值mid,将数组按照比mid小/大分为两半,再对子数组进行同样操作(二叉树前序遍历) 具体操作:主要是分2半那里,可以巧妙一些地来遍历,所以用到了left和right指针(重合时就遍…

【Redis】面试题汇总

Redis什么是Redis、使用场景有哪些Redis 为什么这么快&#xff1f;Redis 数据类型及使用场景五种常见的 Redis 数据类型是怎么实现&#xff1f;Redis是单线程吗Redis 采用单线程为什么还这么快&#xff1f;Redis 如何实现数据不丢失&#xff1f;Redis 如何实现服务高可用&#…

基于Linux的Ncurse库的贪吃蛇项目

贪吃蛇项目的意义 承上启下&#xff1a;从C语言基础的学习&#xff1a;数据结构链表基础、C变量、流程控制、函数、指针、结构体等。过渡到Linux系统编程&#xff1a;文件编程、进程、线程、通信、第三方等。 Linux终端图形库curses curses的名字起源于"cursor optimiz…

Oracle Analytics BIEE 操作方法(五)仪表盘导出“区域”不换行也不合并居中的方法

1 分析 取消所有区域内列格式里面的换行 2 仪表盘 点击“工具” 打印和导出选项 设置固定列宽&#xff08;范围是&#xff1a;0-300&#xff09;

Day22 SSH远程管理服务

sshd服务&#xff0c;系统自带&#xff0c;默认开机自启运行 云/物理服务器的安全组和防火墙默认放行该端口 软件包&#xff1a;openssh-server&#xff08;服务端&#xff09;&#xff1b;openssh-client&#xff08;客户端&#xff09;&#xff1b; 格式&#xff1a;ssh I…

【学习笔记二十七】EWM存储类型控制

一、EWM存储类型控制概述 Storage control 是用来决定仓库产品移动时所需要的流程步骤。它的目的是用来处理基于仓库物理布局及仓库流程所要求的复杂的上架和下架流程步骤。 仓库里常见的操作步骤有:Picking、Packing、Staging、Loading、Putaway、Unloading、Counting、Quali…

Jetbrains Fleet这十个快捷键,效率提高50倍

当我们无法解决一段感情中的问题 就会选择解决这段感情 如果真诚不得到回应 那么再热情的人 也会沉默 很多人对你感兴趣 却没有人执着于你 我们知道任何一款牛批的IDE 都是有很多快捷键的&#xff0c;但是我们没有superpower &#xff0c;不能记住所有的快捷键。 所以下面…

成功密码期刊投稿简介

《成功密码》综合版是由国家新闻出版总署批准&#xff0c;江西省教育厅主管的正规期刊&#xff0c;"以培养担当民族复兴大任的时代新人为着眼点&#xff0c;强化教育引导、实践养成、制度保障"&#xff0c;倡导教育研究的学术水准&#xff0c;注重理论与实践的有机结…

Delphi 的Show和ShowModal

Show没有返回值是一个过程&#xff0c;焦点可以不在当前窗体&#xff1b; 用法新建一个子窗体&#xff1a; 主窗体&#xff1a; 调用&#xff0c;引用子窗体的单元 调用 showmodal是一个函数有返回值&#xff0c;窗体的处理结果&#xff0c;且只能聚焦到当前窗体 效果都能展示…

尺取法知识点讲解

一、固定长度的情况&#xff1a; 最小和(sum) 输入N个数的数列&#xff0c;所有相邻的M个数的和共有N-M1个&#xff0c;求其中的最小值。 输入格式 第1行&#xff0c;2个整数N&#xff0c;M&#xff0c;范围在[3…100000]&#xff0c;N>M。 第2行&#xff0c;有N个正…

C++多线程系列——std::future | std::promise

获得线程执行任务的结果 在 C 11 之前&#xff0c;想要从线程返回执行任务的结果&#xff0c;可以通过指针来完成。 void fun(int x, int y, int* ans, std::condition_variable &cv) {// 模拟求值之前的准备工作this_thread::sleep_for(3s);*ans x y;cv.notify_one();…

一文掌握Vue3:深度解读Vue3新特性、Vue2与Vue3核心差异以及Vue2到Vue3转型迭代迁移重点梳理与实战

每次技术革新均推动着应用性能与开发体验的提升。Vue3 的迭代进步体现在性能优化、API重构与增强型TypeScript支持等方面&#xff0c;从而实现更高效开发、更优运行表现&#xff0c;促使升级成为保持竞争力与跟进现代前端趋势的必然选择。本文深度解读Vue3 响应式数据data、生命…

蓝桥杯python考级整理

4_1:算术运算符 4_2:基本语法 4_3:基本语法 4_4:列表 4_5:函数 4_6:字符串 4_7:列表 4_8:逻辑运算符 4_9:字典 4_10:函数

MacOS通过命令行开启关闭向日葵远程控制的后台服务

categories: [Tips] tags: MacOS Tips 写在前面 经常有小伙伴问我电脑相关的问题, 而解决问题的一个重要途径就是远程了. 关于免费的远程工具我试过向日葵和 todesk, 并且主要使用向日葵, 虽然 MacOS 下要设置很多权限, 但是也不影响其丝滑的控制. 虽然用着舒服, 但是向日葵…