2013-02-26 134 views
2

我有2个表,表A和表B.我插入一个表B到表A的值。表A有列(Key,ID,Name,LOB,a,b,c,d,e,f )。表B有列(密钥,ID,名称,LOB,a,b,c,d,组)。现在,我有这样的语句,如何将一个表中的值插入另一个表中?

Insert ##Table A 
(Key, 
ID,Name,LOB,a,b,c 
) 

Select 
Key, 
ID,Name,LOB,a,b,c) 
From Table B where Key = "blah" 

现在,而不是从表B中选择LOB,我想组列在表A中插入列“LOB”

我该怎么做这些值那?

任何帮助将有所帮助。提前致谢。

+0

SQL Server的替代LOB? MySQL的? – phadaphunk 2013-02-26 21:14:09

+0

sql server 2008 R2多数民众赞成我使用 – ETLUser 2013-02-26 21:15:41

+0

我们可以得到示例的起始表/数据和期望的结果?这可以帮助我们看到你想要的。 – 2013-02-26 21:18:06

回答

5

只是集团在SELECT

INSERT INTO TableA (Key, ID,Name,LOB,a,b,c) 
SELECT Key, ID,Name,Group,a,b,c 
FROM Table B 
WHERE Key = "blah" 
+0

好吧,那么来自GROUP列的值会被添加到LOB列中吗?因为在执行此操作后,我正在使用表A将数据插入到另一个表中。 – ETLUser 2013-02-26 21:38:40

+0

这是正确的,两组列将匹配起来。即;密钥将被插入密钥,带ID的ID,带名称的名称,带组的LOB等。 – 2013-02-26 21:50:08

0

这是你在找什么?

INSERT INTO TableA (Key,ID,Name,LOB,a,b,c) 
SELECT Key,ID,Name,[Group],a,b,c 
FROM TableB 
WHERE Key = "blah" 

这应该工作,假设LOB和GROUP的数据类型是相同的。

+0

是的,他们是一样的! – ETLUser 2013-02-26 21:17:30

+0

@maina - 那么应该为你工作,假设你没有任何领域的表约束等。最好的运气:) – sgeddes 2013-02-26 21:18:06

+0

好,所以从GROUP列的值将被添加到LOB列的权利?因为在执行此操作后,我使用表A将数据插入到另一个表中。在我的示例中,表A是## Tmp表。 – ETLUser 2013-02-26 21:50:50

-1
<?php 
$db = mysql_connect('localhost', 'root', '') or die("Could not connect."); 

if(!$db) 

    die("no db"); 

if(!mysql_select_db("database",$db)) 

    die("No database selected."); 
$query="SELECT park_id,title FROM table1"; 
$result=mysql_query($query); 
while($rows =mysql_fetch_array($result)){ 
$sql= "INSERT into table2 (type,id,title) VALUES ('value','$rows[park_id]','$rows[title]')"; 
mysql_query($sql); 
} 





?> 
相关问题