MySQL Select Statement无效

时间:2013-12-03 06:08:43

标签: mysql

我正在尝试创建一个要在视图中使用的select语句。目标是创建一个显示办公室描述,聚会描述,候选人姓名和任务指示的视图。我有下表是我的数据库:

database layout

SELECT `OFFICE DESCRIPTION`,
       `PARTY DESCRIPTION`,
       `CANDIDATE NAME`,
       `INCUMBANT INDICATOR`   
FROM   OFFICE,PARTY,CANDIDATE 
WHERE  CANDIDATE.`OFFICE CODE`= OFFICE.`OFFICE CODE` 
       AND CANDIDATE.`CANDIDATE ID`=`PARTY CANDIDATE`.`CANDIDATE ID` 
       AND `PARTY CANDIDATE`.`PARTY CODE`=PARTY.`PARTY CODE`;

错误:

#1054 - Unknown column 'PARTY CANDIDATE.CANDIDATE ID' in 'where clause' 

我已经验证了此SQL语句确实存在的所有列,但由于某种原因,它会一直返回PARTY CANDIDAT.CANDIDATE ID不存在的错误。任何帮助,将不胜感激。让我知道你是否需要我更多的内容,包括表格定义和布局。

4 个答案:

答案 0 :(得分:4)

  1. 您需要用反引号括起您的字段名称
  2. 您正在从FROM列表中找到派对候选人

    SELECT `OFFICE DESCRIPTION`,`PARTY DESCRIPTION`,`CANDIDATE NAME`,`INCUMBANT INDICATOR` 
    FROM OFFICE,PARTY,CANDIDATE,`PARTY CANDIDATE` 
    WHERE CANDIDATE.`OFFICE CODE`=OFFICE.`OFFICE CODE` 
        AND CANDIDATE.`CANDIDATE ID`=`PARTY CANDIDATE`.`CANDIDATE ID` 
        AND `PARTY CANDIDATE`.`PARTY CODE`=PARTY.`PARTY CODE`;
    

答案 1 :(得分:2)

我认为问题出在您的FROMWHERE条款中。

FROM OFFICE, 'PARTY CANDIDATE', CANDIDATE

WHERE子句应该像

CANDIDATE.'CANDIDATE ID' = 'PARTY CANDIDATE'.'CANDIDATE ID'

答案 2 :(得分:2)

解决方案是使用@ justin-kiang辅助的以下SQL代码,并包含distinct函数。

SELECT DISTINCT  `OFFICE DESCRIPTION` ,  `PARTY DESCRIPTION` ,  `CANDIDATE NAME` ,  `INCUMBANT INDICATOR` 
FROM OFFICE, PARTY, CANDIDATE,  `PARTY CANDIDATE` 
WHERE CANDIDATE.`OFFICE CODE` = OFFICE.`OFFICE CODE` 
AND CANDIDATE.`CANDIDATE ID` =  `PARTY CANDIDATE`.`CANDIDATE ID` 
AND  `PARTY CANDIDATE`.`PARTY CODE` = PARTY.`PARTY CODE` 
LIMIT 0 , 30;

答案 3 :(得分:1)

试试这个:

SELECT OFFICE.`OFFICE DESCRIPTION`,PARTY.`PARTY DESCRIPTION`,CANDIDATE.`CANDIDATE NAME`,`INCUMBANT INDICATOR` FROM OFFICE,PARTY,CANDIDATE WHERE CANDIDATE.`OFFICE   CODE`=OFFICE.`OFFICE CODE` AND CANDIDATE.`CANDIDATE ID`=`PARTY CANDIDATE`.`CANDIDATE ID` AND     `PARTY CANDIDATE`.`PARTY CODE`=PARTY.`PARTY CODE`;
相关问题