力扣数据库题库学习(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.*';
相关推荐
向上的车轮7 分钟前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长18 分钟前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
Mephisto.java18 分钟前
【力扣 | SQL题 | 每日四题】力扣2082, 2084, 2072, 2112, 180
sql·算法·leetcode
丶Darling.21 分钟前
LeetCode Hot100 | Day1 | 二叉树:二叉树的直径
数据结构·c++·学习·算法·leetcode·二叉树
全栈师1 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 3171 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop
BergerLee2 小时前
对不经常变动的数据集合添加Redis缓存
数据库·redis·缓存
gorgor在码农2 小时前
Mysql 索引底层数据结构和算法
数据结构·数据库·mysql
一个不知名程序员www2 小时前
leetcode第189题:轮转数组(C语言版)
c语言·leetcode
z樾2 小时前
Github界面学习
学习