-2

有人能告诉我为什么我已经有 4 个条目他显示 16 个条目吗?

http://sqlfiddle.com/#!9/0d2300/7

我想显示 domain_id 为 1 或其他内容的所有结果。

我究竟做错了什么?

我想包括我获得此记录 4 次的所有 3 个表,因为我的 domain_check 表中有 4 条记录

我想:

id | domain_id | ssl_check | ssl_orgname 
1  |     1     |    1      |    SSL_TELEKOM
1  |     1     |    0      |    SSL_TELEKOM
1  |     1     |    1      |    SSL_MEDIA
1  |     1     |    1      |    SSL_MEDIA
4

2 回答 2

0

如果您想要 domain_check 中的最后一行并假设 id 标识最后一行,则将条件添加到 where 子句

SELECT  domain.id,
            domain_check.domain_id,
            domain_check.ssl_check ,
            ssl_info.domain_id,
            ssl_info.ssl_organisation
FROM domain
INNER JOIN domain_check ON domain_check.domain_id = domain.id
INNER JOIN ssl_info ON domain_check.domain_id = ssl_info.domain_id
WHERE domain.id = 1 and
        domain_check.id = (select max(id) from domain_check s1 where s1.domain_id = domain_check.domain_id);


+----+-----------+-----------+-----------+------------------+
| id | domain_id | ssl_check | domain_id | ssl_organisation |
+----+-----------+-----------+-----------+------------------+
|  1 |         1 |         1 |         1 | SSL_TELEKOM      |
|  1 |         1 |         1 |         1 | SSL_TELEKOM      |
|  1 |         1 |         1 |         1 | SSL_MEDIA        |
|  1 |         1 |         1 |         1 | SSL_MEDIA        |
+----+-----------+-----------+-----------+------------------+
4 rows in set (0.001 sec)
于 2020-09-22T06:40:40.713 回答
-2

我认为这会对你有所帮助

SELECT 
 domain.id,
 domain_check.domain_id,
 domain_check.ssl_check,
 ssl_info.domain_id,
 ssl_info.ssl_organisation
FROM domain
LEFT JOIN domain_check ON domain_check.domain_id = domain.id
LEFT JOIN ssl_info ON domain_check.domain_id = ssl_info.domain_id
WHERE domain.id = 1 group by domain.id

这是截图https://prnt.sc/uljgzx

于 2020-09-22T04:54:22.740 回答