MySQL在同一查询中使用两个数据库。不想组合表

时间:2017-04-03 02:27:39

标签: mysql database

MySQL的新手,寻找答案,但多个数据库问题似乎都是关于组合表格,而不是我之后的事情。

在新数据库中,我从旧数据库复制了一个表,其中大多数列都不是全部。

我需要从旧数据库中获取客户编号,其中客户名称为' Co。'以他们的名义。这应该返回大约80行的14个左右的客户

然后我需要删除第二个数据库中包含这些客户编号的所有订单。

这是否可以使用子查询?那就是我现在被困住的地方。

非常感谢。

2 个答案:

答案 0 :(得分:0)

您可以在一个查询中使用多个数据库:

例如:

SELECT database1.col1,database2.col2  来自database1optionsdatabase2options   在database1option_name =" sort_order"

答案 1 :(得分:0)

假设您有一个SO线程表(threads_table),您需要从中删除已在另一个表(Problem)的problem_log字段中标识的重复项。

DELETE FROM `threads_table`
    WHERE `thread_ID` IN 
        (SELECT `Thread_ID` from `problem_log_table` 
        WHERE `Problem`='Duplicate'); 

编辑添加: 如果我能正确理解您的需求,这是实现目标的唯一方法。 (顺便说一句,我已经假设使用两个不同数据库的表格增加了复杂性。)

DELETE FROM tbl2
    WHERE tbl2.customer_num IN 
        (SELECT tbl1.customer_num from `tbl1` 
        WHERE tbl1.customer_name LIKE '%Co.%');