我想知道在这种情况下如何做关节:
我有一个名为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'
的信息。
答案 0 :(得分: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'
它将从每种类型中获取记录。如果您需要信息表 特定类型只需添加另一个条件
SELECT
*
FROM mytable
WHERE src = '192.168.1.2'
AND type = 1