Php MySql查询内部联接不为空时

Php MySql查询内部联接不为空时,php,mysql,sql,Php,Mysql,Sql,使用以下语句进行查询: 如果table2.data不为空:table1.id=table2.id和table2.data=table1.data 但是如果table2.data为空:=table1.id=table2.id,不带“data” select * from table1 inner join table2 if 'data' null or 'data' blank on table1.id = table2.id if 'data' nut null or

使用以下语句进行查询:

如果table2.data不为空:table1.id=table2.id和table2.data=table1.data

但是如果table2.data为空:=table1.id=table2.id,不带“data”

    select * from table1
    inner join table2
if 'data' null or 'data' blank
    on table1.id = table2.id
if 'data' nut null or 'data' not blank
    on table1.id = table2.id and table2.data = table1.data 

我找到了很好的解决方案:coalescemysql函数

你想这样做吗

 select * from table1
 inner join table2
 on table1.id = table2.id and table2.date = table1.date
 where table2.date is not null or table2.date != '' 
可能是这样的:

SELECT * FROM table1
INNER JOIN table2
ON table1.id = table2.id AND table2.date = table1.date
WHERE table2.date IS NOT NULL table2.date != '' 

在WHERE条件中使用或将使其始终为真,date从不为空。

这样,如果date为空,它将返回0结果,我想删除此-'和table2.date=table1.date'如果date字段为空,您可能正在寻找左联接?从你的问题来看还不太清楚。。。