MySQL uu在单个查询中检索多个行和列

MySQL uu在单个查询中检索多个行和列,mysql,sql,Mysql,Sql,我是Mysql的新手 我想从数据库中检索包含StrainName=M18的所有列,但出现错误。请帮我做这件事 SELECT * strain.strainName, feature.contigId, feature.startPosition, feature.stopPosition, feature.orfId, feature.orfType, feature.funcClassification, feature.rastId, feature.strand from featu

我是Mysql的新手

我想从数据库中检索包含StrainName=M18的所有列,但出现错误。请帮我做这件事

SELECT * 

strain.strainName,
feature.contigId,
feature.startPosition,
feature.stopPosition,
feature.orfId,
feature.orfType,
feature.funcClassification,
feature.rastId,
feature.strand 
from feature,strain 
where feature.id=strain.id and strainName='M18';
错误1064 42000:您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行“strain.strainName,feature.contigId,feature.startPosition,feature.stopPosition,fe”附近使用的正确语法*

要获取所有列,请执行以下操作:

SELECT * from feature,strain 
where feature.id=strain.id and strainName='M18';   
要获取特定列,请执行以下操作:

SELECT                       
        strain.strainName,
        feature.contigId,
        feature.startPosition,
        feature.stopPosition,
        feature.orfId,
        feature.orfType,
        feature.funcClassification,
        feature.rastId,
        feature.strand 
from    feature,strain 
where   feature.id=strain.id and 
        strainName='M18';

这是什么意思?选择所有列并再次重复这些列?我以前从未见过星星与列名一起使用。Thanks@Saher这个答案只说明了错误在哪里。也许警察想试试。即使用户使用*并选择列,重复的列也不会显示在列表中。@Scotch有效是什么意思?它完全有效。@jw我问的是因为我没有使用那个语法。选择all*,然后从两个表中选择特定列并在where子句中联接,而不是选择列并联接表。我不是说它是无效的,只是不同而已,我想知道它有什么不同。有效,是的。没有道理。
SELECT                       
        strain.strainName,
        feature.contigId,
        feature.startPosition,
        feature.stopPosition,
        feature.orfId,
        feature.orfType,
        feature.funcClassification,
        feature.rastId,
        feature.strand 
from    feature,strain 
where   feature.id=strain.id and 
        strainName='M18';