Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL连接表并提取数据_Mysql - Fatal编程技术网

MySQL连接表并提取数据

MySQL连接表并提取数据,mysql,Mysql,我是MySQL新手,我想从两个不同的表中提取列 就像我想要表1的标题和表2的正文一样 我正在努力 SELECT `title` from node INNER JOIN `body` from node_revisions 它给出错误:1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,了解使用near“from node_”修订版的正确语法 在第1行限制0,25'首先,您需要知道外键是什么,主键是什么。外键用于将两个表链接在一起 外键是一个表中引用另一个表中主键的字

我是MySQL新手,我想从两个不同的表中提取列

就像我想要表1的标题和表2的正文一样

我正在努力

SELECT `title` from node INNER JOIN  `body` from node_revisions
它给出错误:1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,了解使用near“from node_”修订版的正确语法
在第1行限制0,25'

首先,您需要知道外键是什么,主键是什么。外键用于将两个表链接在一起

外键是一个表中引用另一个表中主键的字段或字段集合。包含外键的表称为子表,包含主键的表称为引用表或父表。您可以查看这个伟大的网站,了解如何制作外键:

我不知道您的表是如何创建的,但如果它们可以通过内部联接链接在一起,这意味着两个表中必须有匹配的值,那么这就是您想要的结果:

选择node.title作为标题,选择node_.body作为正文 从节点 node.FOREIGNKEY=node\u revisions.PRIMARYKEY上的内部联接节点\u修订;

我希望这对你有帮助。在提出这些基本问题之前,你应该做更多的研究。有关MySQL语法的所有问题,请参见:


希望这能帮助您指定要加入的列。例如,从node.id=body.node\u修订版上的节点内部连接主体中选择标题。我不知道您的表模式是什么,也不知道第二个from是指什么。如果您可以发布表架构以及要加入的列,我们可以帮助您进行查询。我只是使用phpmyadmin title is column from table Node,Body is column from table Node_revisionsOkay,所以我只想明确一点,您正在尝试从Node和Node_revisions中选择title和Body列,对吗?因此,您现在缺少的一点是表应该由哪些列连接。例如,您的节点表可能有一个id,而您的节点修订可能有一个节点或节点id列。您需要在这些列上进行连接。因此,如果您想要从中获取标题的记录的id为1,那么node_revisions表的node_id也将为1。它们都有nid和vid。您可以编写一个我可以运行的语句吗?有关详细信息,请参阅P.Soutikevich的答案。了解如何进行连接以及如何高效地进行连接非常重要。但是,您要查找的查询很可能是:从node.nid=node\u revisions.nid上的节点内部连接node\u revisions中选择node.title、node.body。如果您使用的是phpmyadmin,您可以使用它们的GUI轻松地创建列外键、主键、唯一、自动递增等。只需点击一个按钮,无需使用查询。