3

MySql テーブルをワークシートにバックアップしています。現在の結果セットには、一部の列が空の行があります。

それは問題ありませんが、ワークシートではこれらを「foo」に置き換える必要があります。方法?

すべてのヘルプは大歓迎です。

4

3 に答える 3

10

空またはNULL? そこに大きな違いがあります。NULL の場合は、次のCOALESCE()関数を使用できます。

SELECT COALESCE(`MyColumn`, 'foo') As MyColumn FROM `MyTable`

値が空の場合は、次のようにする必要があります。

SELECT IF(char_length(`MyColumn`)>0, `MyColumn`, 'foo') AS MyColumn FROM `MyTable

または、それらを組み合わせることもできます。

SELECT IF(char_length(COALESCE(`MyColumn`,''))>0,`MyColumn`,'foo') AS MyColumn FROM `MyTable`
于 2009-03-24T14:49:16.030 に答える
3

「IFNULL」を使用するだけです:

SELECT IFNULL(col1,'foo')
FROM mytable
于 2009-03-24T14:49:44.580 に答える
2

このCOALESCEステートメントは、渡された最初の非 null パラメータを返します。

SELECT COALESCE(column,'foo')

columnnull でない場合は返し、'foo'それ以外の場合は返します。

于 2009-03-24T14:49:45.500 に答える