Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.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 对包含空格的列使用select语句_Mysql_Sql_Request - Fatal编程技术网

Mysql 对包含空格的列使用select语句

Mysql 对包含空格的列使用select语句,mysql,sql,request,Mysql,Sql,Request,我有两张桌子: 第一表 [![在此处输入图像描述][1][1] 第二表OGRAF [![在此处输入图像描述][2][2] 在状态或服务发生变化后,我想更新表Suivi上的RAFHJ值。OGRAF表表示每种组合的RAFHJ 例如:表Suivi中的977项目是MFW的第4个状态,因此根据OGRAF表,RAFHJ应该是5,所以一切都很好。现在,如果状态变为5-Install/Config,RAFHJ应该变为4,仍然根据OGRAF表 目前我只是想得到我需要的价值。 问题是列名中有空格,因此我无法执行此类

我有两张桌子:

第一表 [![在此处输入图像描述][1][1]

第二表OGRAF [![在此处输入图像描述][2][2]

在状态或服务发生变化后,我想更新表Suivi上的RAFHJ值。OGRAF表表示每种组合的RAFHJ

例如:表Suivi中的977项目是MFW的第4个状态,因此根据OGRAF表,RAFHJ应该是5,所以一切都很好。现在,如果状态变为5-Install/Config,RAFHJ应该变为4,仍然根据OGRAF表

目前我只是想得到我需要的价值。 问题是列名中有空格,因此我无法执行此类请求:

Select (Select Status from Suivi where idProject=1) 
from OGRAF, Suivi 
WHERE Suivi.Service=OGRAF.Service and Suivi.idProject=1; 
如果我这样做,它会起作用:

Select `8 - Tests` 
from OGRAF, Suivi 
WHERE Suivi.Service=OGRAF.Service and Suivi.idProject=1;
我已经花了好几个小时试图解决这个问题,最近我开始使用SQL,所以如果有人能帮助我,我将不胜感激。

你试过了吗

Select [8 - Tests] 
from OGRAF, Suivi 
WHERE Suivi.Service=OGRAF.Service and Suivi.idProject=1;

试一试

据我所知,以下答案可能会有所帮助

您可能希望将您的问题标记为MySQL,并编写一个更好的文本,因为您的请求不清楚-您不需要指定表OGRAF中的表Suivi列RAFHJ中的值

MySql未检查示例:

update Suivi su
  join OGRAF og on su.Service = og.Service
set
  su.RAFHJ = 2
where su.idProject = 1;

MySql的语法允许在列的名称中留有空格。你必须在名字后面加上勾号`

如果联接列表中多个表中的列名称相同,则可以使用表名称在选择列表中为列添加前缀,以消除歧义


你说它不起作用是什么意思。它会崩溃吗?它是否显示了不同的结果?我收到一条错误消息:1064-您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解在第1行的“[8-测试]附近使用的正确语法,其中Suivi.Service=OGRAF.Service和Suivi.idPr”,因为我理解您的问题,您想从OGRAF中选择与Suivi.Status中的值同名的列吗?我想选择OGRAF单元格的值,即Suivi.Service=OGRAF.Service和Suivi.Status=OGRAF.该列的名称谢谢您的回复,我编辑了我的帖子,希望现在能更好地理解。