0

我想知道在这种情况下我该如何做关节:

我有一个名为 : 的表Table_ref,其中包含数据库中所有表的名称,其结构为:

-----------------------------------------------
| Field       | Type        | Null   | Key    |
-----------------------------------------------
| tbl_name    | varchar(45) |  NO    | PRI    |
| tbl_type    | Tinyint(3)  |  NO    | MUL    |
-----------------------------------------------

和其他十四个表,其名称如 : A1, B1, A2, B2... 具有相同的结构:

-----------------------------------------------
| Field       | Type        | Null   | Key    |
-----------------------------------------------
| id          | int(10)     |  NO    | PRI    |
| itime       | int(10)     |  YES   | MUL    |
| dtime       | int(10)     |  YES   | MUL    |
| src         | varchar(40) |  YES   |        |
| dstname     | varchar(255)|  YES   |        |
-----------------------------------------------

问题是我如何做关节以便src='192.168.1.2'从所有表中提取信息。

4

1 回答 1

0

这是所有表格的组合结构

-----------------------------------------------
| Field       | Type        | Null   | Key    |
-----------------------------------------------
| id          | int(10)     |  NO    | PRI    |
| itime       | int(10)     |  YES   | MUL    |
| dtime       | int(10)     |  YES   | MUL    |
| src         | varchar(40) |  YES   |        |
| dstname     | varchar(255)|  YES   |        |
| type        | Tinyint(3)  |  NO    | MUL    |
-----------------------------------------------

现在您可以使用简单的查询来提取信息

SELECT
    *
FROM mytable
WHERE src = '192.168.1.2'   

它将从每种类型中获取记录。如果您需要特定类型的信息,只需添加另一个 where 条件

SELECT
    *
FROM mytable
WHERE src = '192.168.1.2'   
AND type = 1
于 2013-04-26T09:21:35.867 回答