当非空时,MySql查询内部联接

时间:2014-12-01 10:45:27

标签: php mysql sql

使用以下语句进行查询:

如果table2.data不为null:table1.id = table2.id and table2.data = table1.data

但如果table2.data为null:= table1.id = table2.id(没有'数据')

    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 

我发现使用非常好的解决方案:COALESCE mysql函数

2 个答案:

答案 0 :(得分:0)

你想这样做.. !! ??

 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 != '' 

答案 1 :(得分:0)

可能是这样的:

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

OR条件中使用WHERE会使其始终为真(日期永远不会是NULL'')。