相关疑难解决方法(0)

mysql,ifnull vs coalesce,哪个更快?

如果知道列的结果只有两个候选值,

ifnull(a, b) as a_or_b_1
Run Code Online (Sandbox Code Playgroud)

coalesce(a, b) as a_or_b_2
Run Code Online (Sandbox Code Playgroud)

会给出相同的结果.但哪个更快?在搜索时我发现了这篇文章,其中说ifnull更快.但这是我找到的唯一一篇文章.对此有何看法?

提前致谢 :)

mysql query-optimization

13
推荐指数
2
解决办法
1万
查看次数

在OrderBy Doctrine Querybuilder中使用IS NULL和COALESCE

我基本上有以下(我的)SQL查询

SELECT * FROM `address`
ORDER BY ISNULL(`company`), `company` ASC, COALESCE(`parent_id`, `address_id`), `parent_id` IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

这项工作完美无缺

我的目标是以下排序输出

ID| PARENT_ID | COMPANY | NAME
1 | NULL      | A       | NULL
2 | 1         | A.A     | NULL
3 | 1         | A.B     | NULL
4 | NULL      | B       | NULL
5 | NULL      | C       | NULL
6 | NULL      | D       | NULL
7 | 6         | D.A     | NULL
8 | NULL      | NULL    | A …
Run Code Online (Sandbox Code Playgroud)

mysql doctrine sql-order-by symfony doctrine-orm

8
推荐指数
1
解决办法
9799
查看次数