java - 使用 sql devloper 和准备好的语句在同一字段中插入逗号分隔值
问题描述
以下是准备好的声明。我正在使用准备好的语句根据 where 子句更新表的一列。我正在使用java循环一堆数据。第一次更新后,只要满足“where”子句,我就会尝试在同一列中一个一个地添加多个逗号分隔值。我们正在使用 sql 开发人员。关于如何实现它的任何想法?提前致谢。
"UPDATE table set column2 = ? WHERE column1 = ?";
样本 :
以下是表格的第一次更新:
第 1 列 | 第 2 栏 |
---|---|
约旦 | 尺寸7 |
空军 | 尺寸5 |
以下是多次后续更新以向 where 子句“Jordan”添加新值的预期结果:
第 1 列 | 第 2 栏 |
---|---|
约旦 | 尺寸7、尺寸9、尺寸12、尺寸5 |
空军 | 尺寸5 |
解决方案
我会尝试更改查询以使用 CONCAT 函数。
我没有您正在使用的 Java 代码,但在 for 循环中您可以尝试执行此操作
UPDATE table set table.column2=CONCAT(table.column2, ?) WHERE table.column1=?
在每次迭代中,您最终都会得到类似
UPDATE table set table.column2=CONCAT(table.column2, ', size9') WHERE table.column1="Jordan"
您必须在要附加到 column2 的值中添加“,”。
推荐阅读
- java - 打印导致异常错误的特定字符
- r - 用分数序列填充缺失值
- jenkins - 创建一个支持 JDK12 的 ssh_jenkins_slave 镜像
- adonis.js - 在 PUT、POST、DELETE 操作中 Postman 中的 AdonisJS 错误代码“EBADCSRFTOKEN”
- javascript - 如何知道视频是否来自
- reactjs - 如何在 Typescript 的 React Modal 中添加带有样式组件的包装器?
- c++ - C++ 模板专业化 - 将其他整数类型委托给 uint64_t
- python - How to clear GPU memory after using Tensorflow Graph/Session?
- firebase - 如何“加入”Firestore 规则
- python - 时间字符串的时差(只需要计算分钟的差异然后转换为秒)