如何修复MySQL查询中只返回列名的问题

如何修复MySQL查询中只返回列名的问题,mysql,database,Mysql,Database,我在MySQL数据库中有一个表,用作课程成绩册。我设置了表格,使列为学生名称,行为作业名称。输入的数据是成绩 然而,我遇到的问题是,当我尝试选择一个学生(以学生命名的列)时,它只返回重复的列的名称。 以下是查询: SELECT 'Ryan Wans' FROM cachedb.stewart; 其中Ryan Wans是学生名,stewart是表名。 它返回以下内容: +---------+ |Ryan Wans| +---------+ |Ryan Wans| |Ryan Wans| |Rya

我在MySQL数据库中有一个表,用作课程成绩册。我设置了表格,使列为学生名称,行为作业名称。输入的数据是成绩

然而,我遇到的问题是,当我尝试选择一个学生(以学生命名的列)时,它只返回重复的列的名称。 以下是查询:

SELECT 'Ryan Wans' FROM cachedb.stewart;
其中Ryan Wans是学生名,stewart是表名。 它返回以下内容:

+---------+
|Ryan Wans|
+---------+
|Ryan Wans|
|Ryan Wans|
|Ryan Wans|
|Ryan Wans|
+---------+
它应返回:

+---------+
|Ryan Wans|
+---------+
|100      |
|87       |
|100      |
|96       |
+---------+
它返回4次,因为表中有4个作业。 这些数字代表等级。 感谢您的帮助


注意:我还希望将学生姓名保留为列。

'Ryan Wans'应该是您的where条件

从cachedb.stewart中选择* 其中列名称='Ryan Wans'


或者,在选择后调用您想调用的任何列名称,而不是*,即金额、数量

尝试
Ryan Wans
-用倒勾代替“@MatthewPage非常感谢,这很有效!!你知道为什么你的列名永远不应该是别人的名字吗?那真是糟糕的数据库设计。发布您的表,我们将清理它们:)选择将引号中的任何内容视为文本字符串,
选择“hello world”
。通常列名没有空格,因此您可以只使用不带引号的名称,空格强制您使用引号,但在这种情况下backticks@MatthewPage事实上:你如何使桌子更有效率??需要任何帮助:)对不起,这是错误的。列名实际上称为“Ryan Wans”。很好的数据库建模正在进行中。lol想不到列名会是“Ryan Wans”。同意你的观点,很好的db建模:)对不起,我是个傻瓜:(@RyanWans,这让我们很开心,因为我们已经做到了。一些概念,你将像一个专业的建模师一样建模