MySQL « Есть ли альтернатива IFNULL?

Есть выборка со столбцами col1, col2, col3, col4, col5, col6 и тд. В каждом наборе только одна ячейка имеет значение, остальные NULL. Так как получить именно это значение? Писать что-то типа
/** * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann * (http://qbnz.com/highlighter/ and http://geshi.org/) */ .sql.geshi_code {font-family:monospace;} .sql.geshi_code .imp {font-weight: bold; color: red;} .sql.geshi_code .kw1 {color: #993333; font-weight: bold;} .sql.geshi_code .co1 {color: #808080; font-style: italic;} .sql.geshi_code .co2 {color: #808080; font-style: italic;} .sql.geshi_code .coMULTI {color: #808080; font-style: italic;} .sql.geshi_code .es0 {color: #000099; font-weight: bold;} .sql.geshi_code .br0 {color: #66cc66;} .sql.geshi_code .sy0 {color: #66cc66;} .sql.geshi_code .st0 {color: #ff0000;} .sql.geshi_code .nu0 {color: #cc66cc;} .sql.geshi_code span.xtra { display:block; }
IFNULL(IFNULL(IFNULL(col1,col2),IFNULL(col3,col4)),IFNULL(IFNULL(col5,col6),IFNULL(col7,col8)));

совсем не радует. Может есть какой-то другой способ?

1 ответов


COALESCE(col1, col2, col3, col4, col5, col6, col7, col8)
http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_coalesce