繁体   English   中英

我想使用 mysql 显示特定列

[英]I want to display specific column using mysql

需要帮忙。 我正在尝试将以前的存储表与以前的比率表联系起来。 这是我的代码。 但它总是显示语法错误。 我的桌子:以前的存储:

|IndexId|日期|from_section|to section|

前比例:

|IndexId|日期|BeforeFormerID1|BeforeFormerID2|AfterFormerID1|AfterFormerID2|

我的代码:

$sql = "SELECT * former storage IndexIDDatefrom_sectionto_sectionBeforeFormerID1BeforeFormerID2AfterFormerID1AfterFormerID2 FROM former storage INNER JOIN former ratio ON former storage IndexID = former ratio IndexID ";

查询基本上有3个问题:

  • (1) 星号 ( * ) 不应该在那里;
  • (2) 对于Date列,您应该指定它来自哪个表(因为它们都有该列)
  • (3) 2个表名和1个列名中的空格打断查询; 您要么必须转义表名和列名(在反引号之间),要么(最好)重命名它们。

在不更改表名和列名的情况下,正确的查询将是:

       SELECT `former storage`.`IndexID`
            , `former storage`.`Date`
            , `from_section`, `to section`
            , `BeforeFormerID1`, `BeforeFormerID2`
            , `AfterFormerID1`,  `AfterFormerID2`
         FROM `former storage`
   INNER JOIN `former ratio`
           ON `former ratio`.`IndexID` = `former storage`.`IndexID`

但是如果你改进了一些列名,那么这些反引号中的大部分就不再需要了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM