当前位置: 首页 > news >正文

SQL笔记#函数、谓词、CASE表达式

目录

一、各种各样的函数

1、函数的种类

2、算术函数

  ABS——绝对值

  MOD——取余

  ROUND——四舍五入

3、字符串函数

   ||——拼接

  LENGTH——字符串长度

 LOWER——小写转换

 REPLACE——字符串的替换

  SUBSTR——字符串的截取

   UPPER——大写转换

4、日期函数

 CURRENT_DATE——当前日期

 CURRENT_TIME——当前时间

 CURRENT_TIMESTAMP——当前日期和时间

 EXTRACT——截取日期元素

5、转换函数

 CAST——类型转换

二、谓词

1、什么是谓词

2、LIKE谓词——字符串的部分一致查询

3、BETWEEN谓词——范围查询

4、IS NULL、IS NOT NULL——判断是否为NULL

5、IN谓词——OR的简便用法

6、使用子查询作为IN谓词的参数

7、EXIST谓词

三、CASE表达式

1、什么是CASE表达式

2、CASE表达式的语法

3、CASE表达式的使用方法

一、各种各样的函数

1、函数的种类

        函数,就是输入某一值(参数),得到相应输出结果(输出值)的功能。函数大致可分为以下几种类型:

        1、算数函数(用来作为数值计算的函数)

        2、字符串函数(用来进行字符串操作的函数)

        3、日期函数(用来进行日期操作的函数)

        4、转换函数(用来转化数据类型和值的函数)

        5、聚合函数(用来进行数据聚合的函数)

2、算术函数

        NUMEIC是大多数DBMS都支持的一种数据类型,通过NUMERIC(全体位数,全体小数)的形式来指定数值的大小。

--DDL:创建表
CREATE TABLE SampleMath
(m  NUMERIC (10,3),n  INTEGER,p  INTEGER);--DML:插入数据
BEGIN 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;
    m     | n | p
----------+---+---500.000 | 0 |-180.000 | 0 ||   || 7 | 3| 5 | 2| 4 |8.000 |   | 32.270 | 1 |5.555 | 2 || 1 |8.760 |   |
 \blacksquare ABS——绝对值
postgres=# SELECT m,
postgres-#        ABS(m) AS abs_col
postgres-#   FROM SampleMath;m     | abs_col
----------+---------500.000 | 500.000-180.000 | 180.000||||8.000 |   8.0002.270 |   2.2705.555 |   5.555|8.760 |   8.760
 \blacksquare MOD——取余

MOD(被除数,除数)

postgres=# select n,p,
postgres-#        MOD(n,p) AS mod_col
postgres-#   FROM SampleMath;n | p | mod_col
---+---+---------0 |   |0 |   ||   |7 | 3 |       15 | 2 |       14 |   || 3 |1 |   |2 |   |1 |   ||   |
 \blacksquare ROUND——四舍五入

ROUND(对象数值,保留小数的数值) 

SELECT m, n,ROUND(m, n) AS round_colFROM SampleMath;

3、字符串函数

--创建SampleStr表(不做具体代码说明)

   str1    | str2 | str3
-----------+------+------opx       | rt   |abc       | def  |山田      | 太郎 | 是我aaa       |      || xyz  |@!#$%     |      |ABC       |      |aBC       |      |abc太郎   | abc  | ABCabcdefabc | abc  | ABCmicmic    | i    | I
  \blacksquare ||——拼接

字符串1||字符串2

SELECT str1, str2,str1 || str2 AS str_concatFROM SampleStr;
   str1    | str2 |  str_concat
-----------+------+--------------opx       | rt   | opxrtabc       | def  | abcdef山田      | 太郎 | 山田太郎aaa       |      || xyz  |@!#$%     |      |ABC       |      |aBC       |      |abc太郎   | abc  | abc太郎abcabcdefabc | abc  | abcdefabcabcmicmic    | i    | micmici
postgres=# SELECT str1, str2, str3,
postgres-#        str1 || str2 || str3 AS str_concat
postgres-#   FROM SampleStr
postgres-#  WHERE str1 = '山田';str1 | str2 | str3 |  str_concat
------+------+------+--------------山田 | 太郎 | 是我 | 山田太郎是我
 \blacksquare LENGTH——字符串长度

LENGTH(字符串)

postgres=# SELECT str1,
postgres-#        LENGTH(str

http://www.mrgr.cn/news/92240.html

相关文章:

  • 运行测试用例
  • Orange 开源项目 - 集成阿里云大模型
  • Redis速成(1)
  • 【Python LeetCode 专题】位运算
  • 图论算法篇:BFS宽度优先遍历
  • 【数据结构】链表中快指针和慢指针
  • Zap:Go 的高性能日志库
  • Ollama部署本地大模型DeepSeek-R1-Distill-Llama-70B
  • JavaWeb开发入门:从前端到后端的完整流程解析
  • Fetch API 与 XMLHttpRequest:深入剖析异步请求的利器
  • BUU40 [CSCCTF 2019 Qual]FlaskLight1【SSTI】
  • **模式的好处 (设计模式)
  • Linux第三讲----用户权限(二)
  • 【第五节】C++设计模式(创建型模式)-Prototype(原型)模式
  • Three.js 快速入门教程【六】相机控件 OrbitControls
  • llama-factory部署微调方法(wsl-Ubuntu Windows)
  • elementUI方案汇总
  • 使用VS Code远程开发OpenAI API
  • vue2版本elementUI的table分页实现多选逻辑
  • DeepSeek开源周Day1:FlashMLA引爆AI推理性能革命!