将这两个sql查询合并为一个结果相同的查询

fumotvh3  于 2021-06-20  发布在  Mysql
关注(0)|答案(3)|浏览(353)

我需要一些帮助将这两个sql查询合并成一个查询并得到相同的结果。

数据库结构:

Table: sqldb1_meta Columns: ipaddress, data ###第一个查询: SELECT * FROM sqldb1_meta WHERE ipaddress LIKE '%10.10.1.2%' 从第一个查询中,我得到了与coulmn ipaddress 10.10.1.2匹配的所有内容,另一列包含此条目的数据,在本例中是'92'

第二个查询: SELECT * FROM sqldb1_meta WHERE data LIKE '92' 现在我得到了我想要显示的所有数据,所有列数据中的值都是92。根据第一次查询我只能知道是92。

我如何将它合并到一个查询中,而不必运行2?

hof1towb

hof1towb1#

用你的第一个 Select 查询作为 Where 条件。

SELECT `ipaddress`, 
       `data` 
FROM sqldb1_meta 
WHERE `data` IN (
                 SELECT `data` 
                 FROM sqldb1_meta 
                 WHERE `ipaddress` LIKE '%10.10.1.2%'
              )
7uzetpgm

7uzetpgm2#

根据您的帖子,您只需要使用and运算符组合where子句上的两个条件

SELECT * FROM sqldb1_meta WHERE ipaddress LIKE '%10.10.1.2%' and data LIKE '92'
mbskvtky

mbskvtky3#

需要更多细节,但也许 inner join 表自身(自联接)或 union ...

相关问题