力扣数据库题库学习(4.26日)

1527. 患某种疾病的患者

问题链接

思路与题解

题目要求:

查询患有 I 类糖尿病的患者 ID (patient_id)、患者姓名(patient_name)以及其患有的所有疾病代码(conditions)。I 类糖尿病的代码总是包含前缀 DIAB1 。按 任意顺序 返回结果表。

这个题目要求就是让我们查询字段conditions,选择出值内数据包含前缀 DIAB1的数据。

匹配指定字符串,我们可以使用正则,构造正则表达式,并匹配数据。

这个题目的正则表达式是前缀为DIAB1== 单词开头是DIAB1而不是单词内包含DIAB1 ,这里匹配单词的开头

正则表达式如下:

sql 复制代码
'(^|\\s)DIAB1\\S*'
复制代码
\\b 是一个单词边界的元字符,它确保我们匹配的是一个单词的开始。
DIAB1 是我们要匹配的具体字符串,表示以 "DIAB1" 开头的疾病条件。
.* 表示匹配零个或多个任意字符。这意味着我们不仅匹配以 "DIAB1" 开头的字符串,而且匹配该字符串后的任意字符序列。

题目的完整sql代码如下:

sql 复制代码
SELECT patient_id, patient_name, conditions
FROM Patients
WHERE conditions REGEXP '\\bDIAB1.*';
相关推荐
阿演1 分钟前
DataDjinn v0.1.6 更新:增加在线更新功能,Redis 数据源支持,表格预览和连接体验继续增强
数据库·redis·缓存·数据库连接工具
数据库小学妹2 分钟前
InnoDB内存架构解密:Buffer Pool与性能优化实战
数据库·经验分享·sql·性能优化·架构
AI人工智能+电脑小能手7 分钟前
【大白话说Java面试题 第89题】【Mysql篇】第19题:Hash 索引和 B+ 树索引的区别?它们在使用方面的区别?
java·数据库·mysql·面试·哈希算法
Fanfanaas11 分钟前
C++ 继承
java·开发语言·jvm·c++·学习·算法
一只fish17 分钟前
Oracle官方文档翻译《Database Concepts 26ai》第17章-内存架构
数据库·oracle
memcpy023 分钟前
LeetCode 2144. 打折购买糖果的最小开销【贪心】
算法·leetcode·职场和发展
比企谷八幡35 分钟前
一张表在磁盘上长什么样:Heap File 入门
数据库·oracle
流星白龙37 分钟前
【MySQL高阶】11.InnoDB存储引擎
数据库·mysql
飞翔中文网1 小时前
Java学习笔记之抽象类
java·笔记·学习
wangbing11251 小时前
SQL Server2008 R2版自动备份问题
数据库