MySQL查询问题: Can't select columns from another table

标签 mysql select

我的 SQL 语句看起来像这样

SELECT SQL_CALC_FOUND_ROWS q.id, q.question, sb.subject, c.chapter, sc.section, p.paragraph 
FROM questions AS q
     , subjects AS sb
     , sections AS sc
     , chapters AS c
     , paragraphs AS p 
WHERE (sb.id=q.subject AND c.id=q.chapter AND sc.id=q.section AND p.id=q.paragraph) AND (q.author_id=1) 
ORDER BY  q.id asc 
LIMIT 0, 25

如您所见,这些表通过 id 相互关联。问题是,我得到的是 questions 表的 subject 列,而不是 subjects 表的 subject 列。我在这里缺少什么?

注意

我提供了主题作为示例。实际上,所有三个部分 AS sc、章节 AS c、段落 AS p 都不起作用。我只得到主题。

最佳答案

显然,您问题中的查询很好,但仍要使用此语句来挖掘它,并查看 subjects_subject 列中出现的内容:

SELECT SQL_CALC_FOUND_ROWS q.id, q.question, sb.subject as subjects_subject, c.chapter, sc.section, p.paragraph 
FROM questions AS q
     , subjects AS sb
     , sections AS sc
     , chapters AS c
     , paragraphs AS p 
WHERE (sb.id=q.subject AND c.id=q.chapter AND sc.id=q.section AND p.id=q.paragraph) AND (q.author_id=1) 
ORDER BY  q.id asc 
LIMIT 0, 25

关于MySQL查询问题: Can't select columns from another table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10573624/

相关文章:

mysql - Navicat MySQL : Saving default view of a table

mysql - 如何将MySQL中的时区偏移值(例如 “-0400”)转换为带有冒号(例如 “-04:00”)的值?

MySQL - 如何按文本内容分组?

MySQL 查询 - 使用订单/计数更新字段,但根据另一个字段再次从 1 开始

javascript - 如何使用 jQuery/javascript 影响/选择 Treetable 插件的所有后代

mysql - Laravel 5 选择查询将我的链接变成奇怪的格式

php - 从 API 获取数据时诊断瓶颈

java - TransactionManager read-only=true 不适用于 mysql ReplicationDriver

mysql - 无法使用 MariaDB 控制台进行备份

mysql - 如何在程序中将变量设置为 `table`?