質問

私はしています SELECT INTO OUTFILE そしてそれはすべてのために「 n」を示しています NULL 価値。代わりにそれを空白にする方法はありますか?

私はmysqlにいます。

役に立ちましたか?

解決

使用できます COALESCE このような機能:

COALESCE(yourfield, '')

他のヒント

良い質問、そして2011年と同じように今日関連する。私はこれにストアドプロシージャを使用して、テーブルの名前を議論として取得します。その後、すべてのnull値を空の文字列( '')に変換し、準備されたステートメントとカーソルを使用して、カーソルの場合はSQLではありません。約200列のテーブルと、長さ約15,000文字の結果として生じる準備されたステートメントでテストしました。

CREATE DEFINER=`root`@`localhost` PROCEDURE `ExportFixNull`(
   in tblname tinytext)
BEGIN

set @string=concat(
    "Update ",@tblname," set ",
    (
        select group_concat(column_name,"=ifnull(",column_name,",'')")
        from information_schema.columns 
        where table_name=@tblname
    )
    ,";"
 );

prepare s1 from @string;
execute s1;
drop prepare s1;

メインのSQLファイルには、声明があります

SET @@group_concat_max_len = 60000;

それは非常に重要かもしれません。

詳細(オランダ語): http://wiki.devliegendebrigade.nl/select_into_outfile_%28mysql%29

よろしく、Jeroen Strompf

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top