Setting a variable with select inside coalesce

dmr picture dmr · Aug 26, 2010 · Viewed 7.8k times · Source

How do I fix up this part of my stored procedure?

The select will either return 1, 0, or null. If the select returns 1 or 0, I want @override to be set to that value. If it returns null, then I want @override to be set to 1.

Something is wrong with my syntax; I am told "incorrect syntax near 'select'" and "incorrect sytax near ')'".

Here is the sql:

set @override = (coalesce(select override from groupPreferences g inner join
preferences p on g.preferenceId = p.preferenceId where groupId = 13
and description = 'myDescription'), 1))

Answer

bodee picture bodee · Aug 26, 2010
set @override = (coalesce((select override from groupPreferences g inner join
preferences p on g.preferenceId = p.preferenceId where groupId = 13
and description = 'myDescription'), 1))