我如何在Sql中执行此操作?环?多插入?

时间:2009-09-28 14:56:09

标签: sql

这是DB Schema:

PC
- id (pri key)
- model
- name

Laptop
- id (pri key)
- model
- name

如何获得每台独特(型号)笔记本电脑,如何将其插入型号为+ 1的PC? (+1因为我知道插入可能有效,但我需要的概率不会通过插入来解决)

有任何线索吗?


精化:

对于我们拥有的每个唯一(基于模型列)笔记本电脑记录,我们要创建一个PC记录,其中PC的模型列将是笔记本电脑中模型列的+1。

2 个答案:

答案 0 :(得分:3)

+1不会停止“INSERT INTO”工作:

INSERT INTO PC
    ( Model, Name )
SELECT DISTINCT Model + 1, Name
FROM Laptop

答案 1 :(得分:0)

jrockway的评论中提到了这一点,如果您计划将笔记本电脑的1-1关系保持在具有+1型号的PC上,那么这可能是您最好的选择。

完全删除笔记本电脑表,然后创建以下视图(假设SQL Server):

CREATE VIEW PC
AS
SELECT  ID,Model+1 as Model, Name
FROM Laptop

这样您就不必管理并保持两个表同步。