php - fetch_array 内的 sqlsvr_fetch_array

标签 php mysql sql-server

所以我有一个 PHP 脚本,正在从 MSSQL 转换为 SQLSRV,但遇到了一些困难。

我有这个

 while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC))
{

$time = time() - strtotime('today');

$row2sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."'";
$row3sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."' AND strDate>'".$row[strDate]."' AND mnyAmount<'0'";
$row4sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."' AND strDate>'".$row[strDate]."' AND mnyAmount>'0'";

$row2 = sqlsrv_fetch_array($row2sql, SQLSRV_FETCH_ASSOC);
$row3 = sqlsrv_fetch_array($row3sql, SQLSRV_FETCH_ASSOC);
$row4 = sqlsrv_fetch_array($row4sql, SQLSRV_FETCH_ASSOC);

这本质上是根据搜索提取数据,然后交叉引用每行的数据。在 MySQL 中这不会是一个问题 - 但这里似乎有困难?

基本上,如果我搜索“Smith”,它会显示名称中包含 Smith 的所有用户...(例如三行),然后我希望它分别获取他们的每个余额。

有人可以帮忙吗?

谢谢。

最佳答案

这将是固定代码。 sqlsrv_fetch_array 的第一个参数必须是资源,您在此处给出一个字符串。您必须先执行查询,然后才能“解压缩”它。

while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC))
{

$time = time() - strtotime('today');

$row2sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."'";
$row3sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."' AND strDate>'".$row[strDate]."' AND mnyAmount<'0'";
$row4sql = "SELECT SUM(mnyAmount) AS 'Total' FROM dbo.tblTransactions WHERE intPerson='".$row[intPerson]."' AND strDate>'".$row[strDate]."' AND mnyAmount>'0'";
//$connection is the connection variable you get from opening a connection to the database
$result2 = sqlsrv_query($connection, $row2sql);
$result3 = sqlsrv_query($connection, $row3sql);
$result4 = sqlsrv_query($connection, $row4sql);
$row2 = sqlsrv_fetch_array($result2, SQLSRV_FETCH_ASSOC);
$row3 = sqlsrv_fetch_array($result3, SQLSRV_FETCH_ASSOC);
$row4 = sqlsrv_fetch_array($result4, SQLSRV_FETCH_ASSOC);

关于php - fetch_array 内的 sqlsvr_fetch_array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24529826/

相关文章:

c# - 仅对 DbContext 中的一个查询使用选项 IsolationLevel.ReadUncommited

php - 将 PDO::FETCH_ASSOC 转换为 SQLite

用于 cloud9 IDE 的 PHP 美化器/格式化器

php - 显示来自 mysql 数据库的图像

mysql - 在 CF Admin 中附加 mySQL 数据源

php - 在 PHP 中迭代 MySQL 结果时检测 future 的重复值

c# - 如何在 Entity Framework 中使用 Date Only 作为数据类型

sql-server - 在分区表上选择查询

PHP DOMDocument getElementsByTagName 返回不完整的元素?

mysql - EntityFramework 不添加带有表名的 dbname