mysql - 比较 MySQL 中同一个表的两行

标签 mysql

这就是我所拥有的

Table : Bill
+------+------------+-----------------+---------------------+
| id   | patient_id | bill_number     | confirmed_date      |
+------+------------+-----------------+---------------------+
|   14 |         32 | 4657            | 2012-07-06 04:11:05 |
|   15 |         33 | 4567            | 2012-07-07 05:11:05 |
|   16 |         34 | 4568            | 2012-07-08 06:11:05 |
|   17 |         35 | 7445            | 2012-08-08 07:11:05 |
+------+------------+-----------------+---------------------+

Table: Claim
+------+---------+------------+-------+--------------+---------------------+

|编号 |帐单 ID |患者 ID |水平| claim 格式|确认日期 | +------+---------+------------+--------+------------ ---+---------------------+ | 10 | 10 14 | 14 32 | 32 1 | 1500 | 1500 2012-08-10 10:57:17 | | 11 | 11 14 | 14 32 | 32 1 | UB04 | 2012-08-10 11:01:42 | | 12 | 12 15 | 15 33 | 33 1 | 1500 | 1500 2012-09-10 13:57:17 | | 13 | 15 | 15 33 | 33 1 | UB04 | 2012-09-10 12:01:42 | | 14 | 14 16 | 16 34 | 34 1 | 1500 | 1500 2012-10-10 12:57:17 | | 15 | 15 16 | 16 34 | 34 1 | UB04 | 2012-10-10 13:01:42 | | 16 | 16 17 | 17 35 | 35 1 | 1500 | 1500 0012-11-10 15:57:17 | | 17 | 17 17 | 17 35 | 35 1 | UB04 | 2012-11-10 14:01:42 | +------+---------+------------+--------+------------ ---+--------------------+

在比较每个 bill_id 的两个日期中较大的日期后,我想用 claim 表的确认日期更新账单表的确认日期列( claim 中的账单 ID 和病人 ID 是账单中的 ID 和病人 ID 的外键)

我说得够清楚了吗?

最佳答案

UPDATE Bill b
SET b.confirmed_date = ( SELECT MAX(confirmed_date) FROM Claim c WHERE b.id = c.bill_id)

关于mysql - 比较 MySQL 中同一个表的两行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19980896/

相关文章:

mysql - SQL-如何从另一个表中选择包含多个值的行

mysql - 通过 MSSQL 重置 MySql 上的 Auto_Increment?我什至会选择截断

python - Django 查询特殊字符

php - 如何通过许可证 key 保护我的 php 应用程序?

mysql - Hibernate: native 标识符生成策略如何工作

python - 使用Python加载数据到Mysql

java - Spring Boot JSON解析错误: Cannot deserialize error

mysql - mysql中模式匹配和日期时间函数的混合

mysql - 当我尝试将我的变量插入我的数据库时,它被插入为零而不是预期值

java - 通过 Java 小程序传递用户 ID 和密码的替代方案?