【发布时间】:2025-12-26 17:50:06
【问题描述】:
我正在使用带有服务器端处理的 jquery 数据表。只是我试图让join 查询产生输出。
所以我把 columns 数组改成这样:
$aColumns = array (
"u.user_id",
"CONCAT(u.first_name, ' ', u.last_name)",
"u.gender",
"CONCAT(a.suburb, ', ', a.zip_code)",
"u.date_registered"
);
并像这样更改查询。
$sQuery = "SELECT SQL_CALC_FOUND_ROWS u.user_id
, CONCAT(u.first_name, ' ', u.last_name)
, u.gender
, CONCAT(a.suburb, ', ', a.zip_code)
, u.date_registered
FROM users u
INNER JOIN user_addresses a ON a.user_id = u.user_id ".$sWhere.$sOrder.$sLimit;
然后我可以填充数据表。但它的搜索、过滤和排序不起作用。
当我尝试搜索、过滤或排序时,我可能会遇到这种错误。
“where 子句”中的未知列“u.user_id”
更新
这是我回显$sQuery时的输出
SELECT SQL_CALC_FOUND_ROWS u.user_id
, CONCAT(u.first_name, ' ', u.last_name)
, u.gender
, CONCAT(a.suburb, ', ', a.zip_code)
, u.date_registered
FROM users u
INNER JOIN user_addresses a ON a.user_id = u.user_id AND a.address_type = 1
WHERE (`u.user_id` LIKE '%s%' OR `CONCAT(u.first_name, ' ', u.last_name)` LIKE '%s%' OR `u.gender` LIKE '%s%' OR `CONCAT
(a.suburb, ', ', a.zip_code)` LIKE '%s%' OR `u.date_registered` LIKE '%s%') LIMIT 0, 10
Unknown column 'u.user_id' in 'where clause'
谁能帮帮我。 谢谢你。
【问题讨论】:
-
你能回显出
$sQuery变量吗?然后我们将能够看到您的where、order和limit变量的值。 -
@Lock,你能告诉我如何在处理脚本中回显我的查询吗?我只是尝试过这样
echo $eQuery;但我无法获得输出。 -
在查询后面加上
echo $sQuery; exit;。
标签: php jquery mysql datatables