我有三张桌子,桌子A,桌子B和桌子C
我想将数据从TableA列DateA迁移到TableB列DateB,仅当表B中的date字段为空时(我不想覆盖任何现有数据)
我需要使用TableC连接TableA和TableB,以匹配应按其RobotNumber更新的A行和B行。
表格a
RobotNumber DateA
11 12/12/2015
12 01/05/2018
13 05/03/2019
RobotID Date
2 null
3 07/01/2018
4 null
表格c
RobotNumber RobotID
11 2
12 3
13 4
我尝试连接这些表并执行如下更新,但查询超时:
UPDATE TableB
SET TableB.DateB = TableA.DateA
FROM TableB
inner join TableC c on TableB.RobotID = c.RobotID
inner join TableA a on a.RobotNumber = c.RobotNumber
where TableB.RobotID not in (select RobotID from TableB where DateB is not null)
我将首先删除not in
:
UPDATE TableB
SET TableB.DateB = TableA.DateA
FROM TableB JOIN
TableC c
ON TableB.RobotID = c.RobotID JOIN
TableA a
ON a.RobotNumber = c.RobotNumber
WHERE TableB.DateB is null;
然后,您还应该在表C(RobotID)
和表A(RobotNumber,DateA)
上拥有索引。
以下是我现在的声明: 它工作得很好,但会产生一些主键冲突。所以,当输入新行时,我想做的是: 新建主键+佣金表数据+建议书表数据 有什么想法吗?
如果我有三个表: > 列出所有未被查看的正确方法是什么?此查询是否正确? 按< code>user_id列出所有< code >帖子及其“查看状态”如何? 您是否也可以推荐一个很棒的(用户友好的、非极客的)资源来提高我对LEFT JOIN、CROSS JOIN和(正常连接?从帖子、视图中选择*)的理解? 谢谢大家!
我希望表的所有都具有,其被的重写。 结果应该变成: 我可以通过单独的查询获得它,例如: 第二个查询的结果应该合并到第一个查询中,这样:“当第二个表中的boolean为TRUE时,用第一个表覆盖第二个表的结果” role_cap和enduser_cap表中的正确值都应该成为结果的一部分。但是,如果对于相同的user_cap_id,role_cap有FALSE条目,而enduser_cap有TRUE条
我有三张桌子: 用户id、名称 订单id,日期 状态id,名称 并将透视表定义为: order_userorder_idstatus_iduser_idcreated_at 所以“user_id”是pivot中的一个额外列。 我的订单型号有: 我可以通过以下方式访问用户id: 但无法计算如何获取用户“名称”? 我是否可以在订单模型的“statuses()”方法返回中以某种方式“LEFT JOIN”
在Spring JPA中有没有一种方法可以连接两个表而不使用关联类。 存储库:
我有三个表:user、home、user_home。 在代码中,我有实体用户和主页。 但是我收到下一条消息:“QuerySyntaxException:UserHome没有映射”