【发布时间】:2012-02-27 03:49:41
【问题描述】:
这是我的搜索查询,它输出了一个参数错误。
我需要做什么来纠正它。基本上我需要将这两个表放在一起,并在start 日期之前提取两个表中接下来的 5 个事件。您还会注意到每个表中的最后一个字段彼此不同。
$CEsql = mysql_query("
SELECT id, title, start, end, allDay
FROM calendar
WHERE mem_id='$logOptions_id'
AND start >= DATE_SUB( CURDATE( ) ,INTERVAL 0 MONTH )
UNION ALL
SELECT id, title, start, end, allDay
FROM team_calendar
WHERE team_id IN ($team_array)
AND start >= DATE_SUB( CURDATE( ) ,INTERVAL 0 MONTH )
ORDER BY start ASC LIMIT 5");
我正在使用 MYSQL 5.0 和 PHP。
更新
mysql_error 显示:
1267:操作“UNION”的排序规则的非法混合
【问题讨论】:
-
@Dagon:显然你需要猜测
-
@Dagon mysql_fetch_array() 提供的参数不是有效的 mysql 结果资源
-
@Juan Gonzales:使用
mysql_error(),下次在 mysql 控制台或 PMA 中检查您的每个查询(在您在这里询问之前)以检查查询是否正确 -
我认为人们认为 php 和 mysql 是一回事,因此 mysql 的错误应该显示为 php 的错误;或者他们只是愚蠢!
-
两个表\字段需要相同的排序规则才能使联合工作
标签: php mysql mysql-error-1267