有人能告诉我为什么他显示16个条目,而我已经有4个了吗?
http://sqlfiddle.com/#!9/0d2300/7
我想显示domainid为1或其他值的所有结果。
我做错了什么?
我想包括我4次得到这条记录的所有3个表,因为在我的域中_检查表是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
如果您想要domain_check中的LAST行,并假设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)
我认为这会帮助你
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