我很想知道是否有像标题所说的那样:
SELECT CASE * WHEN NULL THEN '' ELSE * END
我想为数百列进行大小写调整,这样如果我能在SELECT *语句中使用它就会很方便。有人建议我,如果SQL Server或MySQL中有类似的东西吗?感谢
答案 0 :(得分:1)
尝试使用动态SQL( MySql )
SELECT GROUP_CONCAT(CONCAT('COALESCE(`', column_name, '`,'''') `', column_name, '`'))
INTO @sql
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Table1';
SET @sql = CONCAT('SELECT ', @sql, ' FROM Table1');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;