[英]How do I make column alias to be in integer?
我有这条查询线
$sql = " SELECT c.name, IF(a.addressid IS NOT NULL,0,1) AS checked
FROM customers c
LEFT JOIN addresses a
ON c.customerid = a.customerid
WHERE customerid = 123 ";
$array = array();
$GetResult = $Obj->FetchData($sql, $Obj->DEFAULT_PDO_CONNECTIONS);
while ($row = $GetResult->fetch()) {
$array[] = $row;
}
header("Content-type: application/json");
$result = json_encode($array);
echo $result;
当我以JSON格式回显时,将checked
输出显示为字符串。 而且我想知道默认情况下checked
别名的数据类型是什么? 以及如何更改为整数数据类型?
感谢您的回答,默认情况下是的,它已经是数据类型编号,是json
格式的问题。 它产生我checked
为字符串。 所以我在这里找到了答案PHP PHP json_encode将数字编码为字符串 。
$ result = json_encode($ array,JSON_NUMERIC_CHECK);
我已经添加了该列的转换函数来表示整数类型。 希望这将转化为您想要的结果
SELECT c.name, Convert(IF(a.addressid IS NOT NULL,0,1), unsigned integer) AS checked
FROM customers c
LEFT JOIN addresses a
ON c.customerid = a.customerid
WHERE customerid = 123
使用cast
convert
或convert
完整文档 。
因此,它将类似于:
SELECT c.name, cast(if(a.addressid is not null, 0, 1) as unsigned) as checked
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.