Inspectopedia Help

Using CASE instead of COALESCE function and vice versa

Reports situations when CASE and COALESCE calls are interchangeable. This inspection has the following intention actions: Replace with 'COALESCE' call and the opposite one Replace with CASE expression.

Example (MySQL):

SELECT -- this CASE may be replaced by COALESCE CASE WHEN C1 IS NOT NULL THEN C1 ELSE 0 END FROM dual;

In the example, the CASE statement can be replaced with SELECT COALESCE(C1, 0) that produces the same output.

If you prefer using CASE expressions, select the Prefer CASE expressions over COALESCE function option on the inspection page.

Inspection options

Option

Type

Default

Prefer CASE expressions over COALESCE function

Checkbox

false

Inspection Details

Available in:

AppCode 2023.3, CLion 2023.3, DataGrip 2023.3, DataSpell 2023.3, GoLand 2023.3, IntelliJ IDEA 2023.3, JetBrains Rider 2023.1, PhpStorm 2023.3, PyCharm 2023.3, Qodana for .NET 2023.1, Qodana for JVM 2023.3, Qodana for PHP 2023.3, Qodana for Ruby 2023.3, RubyMine 2023.3

Plugin:

Database Tools and SQL, 233.SNAPSHOT

Last modified: 13 July 2023