4

重複の可能性:
Python JSON は Decimal オブジェクトをシリアル化します

私は次のSQLを持っています:

SELECT 
    concat(UNIX_TIMESTAMP(date), '000') as datetime, 
    SUM(royalty_price) as sales 
FROM 
    sales_raw 
GROUP BY 
    datetime

結果は次のようになります。

datetime        sales
1337151600000   1045.71 (decimal)
1337238000000   478.04
1337324400000   300.96
1337410800000   289.02

これから、次のエラーが発生します。

Exception Type: TypeError at /ajax/graph/
Exception Value: Decimal('1045.71') is not JSON serializable

このデータをシリアル化できるようにするには、どうすれば 10 進数を mysql で受け入れ可能な形式に変換できますか?

4

1 に答える 1

4

MySQLでそれを行う必要がある場合はCAST、文字列に対して:

SELECT 
    CONCAT(UNIX_TIMESTAMP(date), '000') AS datetime, 
    CAST(SUM(royalty_price) AS CHAR)    AS sales
FROM 
    sales_raw 
GROUP BY 
    datetime
于 2012-05-31T20:02:02.390 に答える