SQL更新和插入

时间:2010-12-09 14:16:53

标签: sql sql-update

我想这样做

UPDATE CATALOGUE 
SET CATALOGUE.NUMBERINSTOCK=NUMBERINSTOCK-1 
WHERE CATALOGUE.ITEMID =(SELECT ALBUM.ALBUM_ID 
                         FROM ALBUM 
                         WHERE ALBUM.TITLE = '20 People in a Field'
                              AND IS_DISTRIBUTED_AS ='c')

和这个

INSERT INTO ORDERELEMENT VALUES (1,10,12,17)

如果这是真的

(SELECT NUMBERINSTOCK 
 FROM CATALOGUE 
 WHERE CATALOGUE.ITEMID =(SELECT ALBUM.ALBUM_ID 
                          FROM ALBUM 
                          WHERE ALBUM.TITLE = '20 People in a Field'
                                   AND IS_DISTRIBUTED_AS ='c')) > 0 

我遇到的问题是如何在SQL查询中查找条件语句,以及如何在一个查询中执行更新和插入。

我必须做所有这些事情作为一个查询。

1 个答案:

答案 0 :(得分:0)

您无法更新一个表并在一个语句中插入另一个表。 如果指定WHERE子句,则可以有条件地执行UPDATE。您可以使用insert来完成相同的操作(详细信息取决于dbms)。

但是,您可以创建包含条件逻辑的存储过程。该程序的调用可能算作“一个”陈述?