2013-07-28 4 views
-1
Table Book 
{ 
bookno, bookname, authorname 
} 
Table IssuedBook 
{ 
rollno, bookno, bookname, authorname 
} 

Я хочу вставить «rollno» по значению в таблице IssuedBook и скопировать запись из таблицы книг в IssuedBook, указав «bookno».
Каким должен быть SQL-запрос, соответствующий этому?
Я пробовал некоторые запросы (но тщетно), как:
Вставьте одну запись таблицы в другую

INSERT INTO IssuedBook values ('09222') SELECT * FROM Book WHERE bookno='123'; 

Примечание: Ни один столбец не позволяет NULL ключ. Поэтому, если я сделаю это в два этапа, тогда будет ошибка.

ответ

0

Вы можете указать значение rollno вместе с оператором select, на который будут отображены/заданы таблицы IssuedBook.

INSERT INTO IssuedBook (rollno, bookno, bookname, authorname) 
SELECT '09222' rollno, bookno, bookname, authorname 
FROM Book 
WHERE bookno = '123' 
+0

Книга не содержит поля rollno .. – ash

+0

да это не так. 'rollno' - оператор' select' - это просто псевдоним. попробуйте выполнить запрос. –

+0

Я получил его .. Спасибо v.v.much .. – ash

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