Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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 带复杂插入的SQL选择_Mysql - Fatal编程技术网

Mysql 带复杂插入的SQL选择

Mysql 带复杂插入的SQL选择,mysql,Mysql,我试图用一个mysql命令将两个表连接成一个表。我还想将文件路径连接到新表中的一个路径中。任何信息都会有帮助。多谢各位 大概是这样的: INSERT INTO table3 VALUES (Location) SELECT "A.Loc_Path B._FilePath" FROM Table2 A INNER JOIN table1 B ON A._Loc_ID = B._Loc_ID 我想使用表1和表2并创建表3 表1 | ID | _FilePath | _Loc_ID |

我试图用一个mysql命令将两个表连接成一个表。我还想将文件路径连接到新表中的一个路径中。任何信息都会有帮助。多谢各位

大概是这样的:

INSERT INTO table3 VALUES (Location) SELECT "A.Loc_Path B._FilePath" FROM Table2 A INNER JOIN table1 B ON A._Loc_ID = B._Loc_ID
我想使用表1和表2并创建表3

表1

| ID | _FilePath        | _Loc_ID |
| 1  | 001\yay\txt.html |    1    | 
| 1  | 002\yay\txt.php  |    2    |
表2

| _Loc_ID | Loc_Path           |
|    1    | D:\documents\test\ |
|    2    | C:\Temp\test\      |
表3

|  Id  | Location                           |
|   1  | D:\documents\test\001\yay\txt.html |
|   2  | C:\Temp\test\002\yay\txt.php       | 

您需要的是使用连接两列:

INSERT INTO table3 VALUES (Location) SELECT CONCAT(A.Loc_Path, B._FilePath) FROM 
  Table2 A INNER JOIN table1 B ON A._Loc_ID = B._Loc_ID
使用海螺

INSERT INTO table3 (Location) SELECT concat (A.Loc_Path , B._FilePath)  
FROM Table2 A INNER JOIN table1 B ON A._Loc_ID = B._Loc_ID

嘿,我很好奇,它不应该是插入表3(位置)值(XXX)其中XXX是连接结果吗?我是说就像医生说的。。。如果您不介意解释:-)@Enissay,请更好地解释您的评论。我不明白。。你需要一个更好的concat解释吗?不,
关键字位置让我困惑;也可以使用
插入。。。选择
syntax,应该是
INSERT INTO table3(Location)SELECT…
xDWell,@Nir Levy提出了相同的解决方案,这让我觉得这是另一种方式,因为我正在尝试重新构建我生锈的sql知识xD;Thks