我有两个名为 LeftTable 和 RightTable 的表,如下所示
左表
obsid Name Value
1 Ronak A
2 Aakash B
3 Pankti C
4 Sanket D
右表
obsid Name Value
1 Jhone F
2 Isabella M
3 Jonathan L
4 javafx p
现在,当我在某种情况下离开时,输出将如下所示
结果表
obsid Name Value obsid Name Value
-------------------------------------------------------------------------
1 Ronak A 1 Jhone F
1 Ronak A 2 Isabella M
1 Ronak A 3 Jonathan L
1 Ronak A 4 javafx p
2 Aakash B 2 Isabella M
2 Aakash B 3 Jonathan L
2 Aakash B 4 javafx p
3 Pankti C 3 Jonathan L
3 Pankti C 4 javafx p
4 Sanket D 4 javafx p
这个左连接帮助我在我的应用程序中实现一对多关系。
左连接条件在我的应用程序中是动态的。所以这只是我在这里展示的一个例子。假设上例中的左连接条件是 LeftTable.Obsid <= RightTable.Obsid 现在我想实现一对一的关系。一对一关系意味着当任何右表记录与任何左表记录链接一次时,该右表记录不能与任何其他左表记录链接。
对于上面的示例,一对一的输出如下
obsid Name Value obsid Name Value
1 Ronak A 1 Jhone F
2 Aakash B 2 Isabella M
3 Pankti C 3 Jonathan L
4 Sanket D 4 javafx p
我有两种方式实现这个功能:
- 使用光标
- 使用选择查询获取一条一条记录
数据库表在我的应用程序中是动态的。因此,虽然处理数百万条记录需要太多时间,因为一条一条地获取记录并对其进行处理需要时间。
有没有办法在单选查询中实现一对一关系?
我想避免一条一条地获取记录,我正在使用 Mysql 数据库
请帮我。