MySQL CAST功能无法正常工作并作为列名输出

时间:2016-05-05 11:47:46

标签: mysql wpdb

我有一个像这样的mysql查询:

$results = $wpdb->get_results($wpdb->prepare(
               "
               (SELECT 
                CAST(active AS SIGNED)
                FROM $table_name
                WHERE user_id = %d)
                ", $user_id
        ), ARRAY_A); // Output query as array

然后我用json_encode输出结果,但结果输出如下:

{"CAST(active AS SIGNED)":"1"}

它将函数名称显示为列名,值仍为字符串。 有什么想法发生了什么?谢谢你的建议。

1 个答案:

答案 0 :(得分:2)

尝试更改SQL添加“as”语句。像这样:

(SELECT 
 CAST(active AS SIGNED) as column
 FROM $table_name
 WHERE user_id = %d)

然后,您可以使用名称“column”获取数据。