我正在编写一个带有可变子句的重复出现的 sql 选择。在子句中,我有一个 PHP 变量(应该稍后在 WHILE 中替换。
我的代码:
$custaccount_id_clause = "(SELECT DISTINCT(custaccount_id) AS custaccount_id FROM accountcomms_def_tbl a WHERE subagent_def_id = " . '\'$interest_id\'' . " AND agentorder > (SELECT agentorder FROM accountcomms_def_tbl WHERE subagent_def_id = '$subagent_def_id' and custaccount_id = a.custaccount_id))";
$subagent_def_id 有效,因为它已经定义。
$interest_id 不起作用,因为它没有定义。我稍后在一个 while 循环中尝试用 $interest_id 替换它,在该循环中我将 $custaccount_id_clause 作为 while 循环的一部分调用:
$allresidual_sql = mysql_query("SELECT SUM(txn_value) as txn_sum, COUNT(DISTINCT(custaccount_id)) AS accounts FROM account_stmnt_tbl WHERE txn_type IN ('Fixed Residual','Variable Residual','One Time Adjustment') AND custaccount_id IN ". $custaccount_id_clause)or die(mysql_error());
在 $custaccout_id 子句中,我有文本“$interest_id”,我希望 PHP 替换其中的变量。它没有替换变量。
这是我正在为演示编写的一个快速示例应用程序,请不要告诉我我正在使用哪个 API,因为我不会编写任何投入生产的代码!:)