我正在嘗試連接兩個表格,並且還通過我加入的表格中的某一列來排列查詢結果。在已加入表格上的ORDER BY
Call to a member function fetch_assoc() on boolean
這裏是我完整的查詢:
SELECT *
FROM course
JOIN cm ON (course = cm.course)
WHERE title LIKE '%$searchTerm%'
LIMIT $limit
ORDER BY cm.num
任何人有任何建議,直到我添加ORDER BY cm.num
,在這一點上,我得到這個錯誤一切都很正常?
編輯:
的要求的完整代碼:
function getCourses($searchTerm) {
$mysqli = new mysqli('localhost', 'scott', 'tiger', 'courses');
if ($mysqli->connect_errno) {
header("HTTP/1.1 500 Internal Server Error");
die("Failed to connect to MySQL: {$mysqli->connect_error}");
}
$mysqli->set_charset('utf8');
$courses = [];
$limit = $searchTerm == '' ? 1000 : 10;
$res = $mysqli->query("SELECT * FROM course JOIN cm ON (course = cm.course) WHERE title LIKE '%$searchTerm%' ORDER BY cm.num LIMIT $limit");
while($row = $res->fetch_assoc()) {
$course = new Course(
$row['id'],
$row['title'],
$row['href'],
$row['level'],
$row['award'],
$row['summary'],
$row['dept'],
$row['subject'],
$row['overview'],
$row['wyl'],
$row['careers']
);
array_push($courses, $course);
}
return $courses;
}
是'cm'是你的表名? – Saty
當連接表最好在整個查詢中的每一列之前明確寫入表的名稱/別名。 – mitkosoft
在表中是「表」還是「列」?關於你的表的外觀和他們命名的一般想法會有所幫助。 – apokryfos