0

mysqlクエリを直接使用して、json形式のテーブルから値を取得する必要があります(アプリケーションレベルでのphpなどの後処理はありません)。テーブルのフィールドのほとんどは整数であり、レコードの json 文字列を作成するのは難しくありませんが、1 つの列はtext型であり、すべてのゴミが含まれています。

stringifyそのテキスト型の列データで有効なjson文字列を作成することは可能ですか?

クエリ:

 select concat('var sp_json= [',
    group_concat(
      '{"sp_no":',sp_no,',
        "sp_group_no":',sp_group_no,',
        "sp_weight":',sp_weight,',
        "dg_list":[',dg_list,'],
        "comments":\'',coalesce(comments,''),'\'}'
    order by sp_group_no
    ),
   ']') as sp_json

  from sp_dg where  pm_id=1 group by pm_id 

これは、javascript json オブジェクトなどを出力します

  var sp_json=[{},,,]

comments組み込みの mysql 関数がある場合は、それを使用して文字列化する方法が必要です。あなたの考えを共有してください。

4

1 に答える 1

0

この SO answerにある概念でMySQL の StringREPLACE関数を使用することを検討してください。

例 (SQL):

REPLACE(
    REPLACE(
        coalesce(comments,''),'\\','\\\\'
    ),'"','\\"'
)
于 2013-09-13T04:44:14.383 に答える