所以我对数据库A有这个:
SELECT uid FROM user_id where this = :this
使用那些uid我想通过以下查询从数据库B获取数据
SELECT name FROM users where uid = :uid_table1
如何在1个查询中执行此操作?
答案 0 :(得分:1)
据我所知。没有办法让一个查询在不同的数据库上执行其工作的不同部分 - 将查询发送到数据库。您编写的任何代码都必须向每个数据库发送一个查询,即使您以某种方式将其用于某种粘合语言中的单个语句。
作为类比:
我有两个任务。
从最新的印刷版中获取“伞”的定义 Merriam-Webster大学词典。
查找上一个定义中每个单词的定义 最新的印刷品OED。
虽然可以将其改为单句,相当于sagi的答案或使用某种粘合语言:
从最新印刷品Merriam-Webster Collegiate Dictionary的Umbrella定义中查找每个单词。
如果不打开每本书的至少一个副本,就无法执行该任务。
答案 1 :(得分:0)
您可以使用SELECT name
FROM Table2 t
WHERE t.uid IN(SELECT s.uid FROM Table1
WHERE this = :this)
:
SELECT name
FROM Table2 t
JOIN Table1 s
ON(s.uid = t.uid)
WHERE s.this = :this
我假设数据库是指一张桌子?
或者,您可以加入:
string <- "field1,field2,\"there is a , in field3\", field4, \"2,456\", field6"