繁体   English   中英

将2个sql值添加到数组中

[英]Adding 2 sql values into an array

我对php很陌生,我想在mysql列上做两个选择计数,并将它们放入数组中。 我的代码在下面,但是这不起作用。

// DB connection
  $link = mysqli_connect( "localhost", "username", "password", "CE_TRANSACTIONS" );

// Query users table
  $sql = "SELECT (SELECT COUNT(STATUS) FROM CE_TRANSACTIONS WHERE STATUS = 0),
  (SELECT COUNT(STATUS) FROM CE_TRANSACTIONS WHERE STATUS = 3);"

// Execute query
  $result = mysqli_query($link,$sql);

// Loop over all result rows
  $result_array = array();

     while($array = mysqli_fetch_assoc($result)) 
     {

        $result_array[] = $array[];
     }

// Write to JSON
   echo json_encode($result_array);

您好,感谢您的快速答复,我也收到以下错误消息PHP Parse错误:语法错误,下一行意外的T_VARIABLE。

  // Execute query
  $result = mysqli_query($link,$sql);

更改

 $result_array[] = $array[];

 $result_array = $array;

通过使用以下查询,您可能还会看到性能提升。

SELECT Sum(Case When Status = 0 Then 1 Else 0), 
       Sum(Case When Status = 3 Then 1 Else 0)
FROM   CE_TRANSACTIONS

我相信您的问题来自$array[];

[]的意思是“访问值at”,但您没有访问数组的任何索引。

您要执行的操作是: $result_array[] = $array

PHP Parse error: syntax error, unexpected T_VARIABLE是因为您的行

 $sql = "SELECT (SELECT COUNT(STATUS) FROM CE_TRANSACTIONS WHERE STATUS = 0), (SELECT COUNT(STATUS) FROM CE_TRANSACTIONS WHERE STATUS = 3);" 

缺少尾随;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM