PHP vs MYSQL空检查

时间:2015-04-22 12:54:59

标签: php mysql

我有一个包含大量记录的数据库,更具体地说,我有一个查询,其中包含多个子查询,用于获取记录并显示在前端。

如果字段包含NULL,我想显示一些默认值。

那么请你帮我找出以下哪种方法可以提供更好的性能。我现在正在使用MYSQL方法,但这需要很多时间 非常感谢任何建议。

MYSQL方法

SELECT A.columnA,
IFNULL (( SELECT B.columnB FROM tableB B), 'default-value') AS columnB,
IFNULL (( SELECT C.columnC FROM tableC C), 'default-value') AS columnC,
IFNULL (( SELECT D.columnD FROM tableD D), 'default-value') AS columnD
FROM tableA A
WHERE 1=1
LIMIT 20
ORDER BY A.columnA ASC

PHP方法

foreach($recordsFromDB as $record) {
    if(is_null($record->columnB)) {
        echo 'default-value';
    } else {
        echo $record->columnA;
    }
}

1 个答案:

答案 0 :(得分:0)

在编程中没有完美的方法,因此找到了很多解决方案!所以让我们从这一点开始, 在我看来,检查空值应该使用PHP,然后你可以传递你得到的句柄进行进一步的MySQL处理! 您显然很难使用MySQL处理所有这些查询。 我的建议,尝试检查空值并在php中替换它们,如果你不得不处理在数据库命中MySQL中检索/获取或插入值