php - 数据表 - 我如何使用数组作为 SQL where 子句
问题描述
我正在尝试制作一个根据用户设置动态加载数据的数据表。
在服务器处理脚本上
我有当前用户拥有的一系列分支机构。
$branchesOwned = $db->query('SELECT branchId FROM zapp_clt_branchesowner WHERE ownerId = ?', $ownerId)->fetchAll();
到目前为止,一切都很好!
我试图创建一个辅助数组,我将在其中存储第一个数组中的 branchId:
$whereArray = [];
foreach ($branchesOwned as $result) {
array_push($whereArray, $result['branchId']);
}
现在在 SSP 综合体上,我有这个:
//$whereAll = "status = 'B Activo' AND branchID IN ('1')"; <--- WORKING
$whereAll = "status = 'B Activo' AND branchID IN {$whereArray}"; // <--- NOT WORKING
echo json_encode(
SSP::complex( $_GET, $sql_details, $table, $primaryKey, $columns, $whereResult = null, $whereAll)
);
如您所见,它是否直接将数组写入 $whereAll 它可以工作
解决方案
你可以这样做:
$idsAsString = sprintf("('%s')", implode("', '", $whereArray));
$whereAll = "status = 'B Activo' AND branchID IN $idsAsString";
推荐阅读
- .net - .NET:如何将 Azure RetriableStreamImpl 转换为 ASP.Net Core IFormFile?
- ios - 带有开放式 cv 和 tensorflow 的自定义 agora sdk 颤振
- java - InsufficientAuthenticationException 的 Spring Boot 自定义错误对象
- python - 如何通过端口转发让我的朋友可以使用 Flask 应用程序?
- javascript - PostgreSQL 中的 JavaScript 数组比较
- sql-server - 如果我使用变量,为什么 GETDATE 会减慢选择查询的速度?
- laravel - 在 laravel 中使用补丁方法更新模型
- asp.net-mvc-5 - 上传的文件路径未显示在索引页面上
- python - 在 vscode 中调试 python 失败
- sql - “无法批量加载。排序顺序不正确......”重建索引分区时