gpt4 book ai didi

java - 如何在执行 SELECT 之前格式化 WHERE 子句列中的数据?

转载 作者:行者123 更新时间:2023-12-02 01:06:57 24 4
gpt4 key购买 nike

我正在使用 Microsoft SQL Server 并已存储数据。在我的一张表中,我可以找到如下数据:

+--------+------------+
| id | value |
+--------+------------+
| 1 | 12-34 |
| 2 | 5678 |
| 3 | 1-23-4 |
+--------+------------+

我意识到插入时VALUE列的格式不正确。我想要实现的是通过给定值获取 id:

SELECT d.id FROM data d WHERE d.value = '1234';

有什么方法可以格式化 SELECT 子句之前的列中的数据吗?我应该创建新 View 并修改该 View 中的列,还是使用复杂的 REGEX 来仅获取数字(使用 LIKE 比较器)?

  • 附注我使用 Hibernate 管理 Jakarta EE 项目中的数据库。
  • PS2。我无法修改存储的数据。

最佳答案

一种方法是在比较之前使用replace():

WHERE REPLACE(d.value, '-', '') = '1234'

关于java - 如何在执行 SELECT 之前格式化 WHERE 子句列中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59895821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com