Mysql 其中位于联接表上-仅在找到行时应用(联接)

Mysql 其中位于联接表上-仅在找到行时应用(联接),mysql,sql,join,Mysql,Sql,Join,我的问题是: SELECT T1.* FROM table1 T1 LEFT JOIN table2 T2 ON T2.fk = T1.id WHERE T2.active = 1 并非表1中的所有行都可以连接到表2。对于那些可以的,应该设置T2.active=1约束 问题: 如果在表2中找不到连接行,但我仍然从表1中获取行,如果存在,那么T2.active=1,那么如何修复这种情况下的查询 谢谢 第二个表中的条件应在on子句中: 请注意,如果您只是从表1中选

我的问题是:

SELECT
    T1.* 
FROM
    table1 T1
    LEFT JOIN table2 T2 ON T2.fk = T1.id
WHERE
    T2.active = 1
并非表1中的所有行都可以连接到表2。对于那些可以的,应该设置T2.active=1约束

问题:

如果在表2中找不到连接行,但我仍然从表1中获取行,如果存在,那么T2.active=1,那么如何修复这种情况下的查询


谢谢

第二个表中的条件应在on子句中:


请注意,如果您只是从表1中选择列,这并不特别重要。我假设您的SELECT实际上包含两个表中的列。

向我们展示一些示例表数据和预期结果,所有这些都是格式化文本而不是图像。您的任务看起来非常奇怪。现在,在解决您的问题之后,对于表t1中的每条记录,返回与t2中有相关记录一样多的副本,如果没有相关记录,则返回一个副本。也许您也需要表t2中的一些列?
SELECT T1.* 
FROM table1 T1 LEFT JOIN 
     table2 T2
     ON T2.fk = T1.id AND T2.active = 1;