2013-02-26 7 views
2

У меня есть 2 таблицы, таблица A и таблица B. Я вставляю значение из таблицы B в таблицу A. Таблица A имеет столбец (ключ, идентификатор, имя, LOB, a, b, c, d, e, f). В таблице B есть столбец (ключ, идентификатор, имя, 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" 

Теперь вместо выбора LOB из таблицы B, я хочу группы столбец и те значения, которые будут вставлены в таблицу А для столбца «LOB»

Как сделать что?

Любая помощь будет полезна. Заранее спасибо.

+0

сервер Sql? MySql? – phadaphunk

+0

sql server 2008 R2 thats what i m using – ETLUser

+0

Не могли бы мы получить образцы стартовых таблиц/данных и желаемые результаты? Это может помочь нам понять, что вы хотите. –

ответ

5

Просто замените LOB с группой в 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 правильно? потому что после выполнения этой операции я использую таблицу А для вставки данных в другую таблицу. – ETLUser

+0

Правильно, два набора столбцов будут сопоставлены. то есть; Ключ будет вставлен с ключом, идентификатором с идентификатором, именем с именем, LOB с группой и т. Д. И т. Д. –

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

+0

@maina - тогда это должно работать для вас, предполагая, что у вас нет ограничений таблиц на любом из ваших полей и т. Д. Удачи :) – sgeddes

+0

Итак, значение из столбца GROUP будет добавлено в колонке LOB справа? потому что после выполнения этой операции я использую таблицу А для вставки данных в другую таблицу. В моем случае таблица А представляет собой таблицу ## Tmp. – ETLUser

-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); 
} 





?> 
Смежные вопросы