IFNULL在mysql速度问题上

时间:2013-03-14 04:46:34

标签: mysql database-performance ifnull

select IFNULL(col1, (select col2 from table2 where ...)) from table1 

如果table1没有空值,它会为table2运行select吗?这是速度问题。我没有适当的数据库来检查。

1 个答案:

答案 0 :(得分:0)

只有当col1为null但每次为null时,才会执行子查询。因此,如果col1中有许多空值,这将变得非常慢。

以下内容可能更适合您:

select coalesce(col1,col2) from table1,table2 
                     where (relationship between both tables)