0
重新設計數據庫佈局填寫表格另一個表ID列,我已經打了一個路障:如何使用中間表爲紐帶
原來的表現名爲Items_Old
有重要的這3列:
Name | Width | Length
因爲我已經做了一個新的表名爲ItemSizes
:
ID | Width | Length
和最後叫Items
:
Name | SizeID
我試圖找出如何選擇從ItemSizes
表SizeID到Items
表
where Items_Old.Name = Items.Name and Items_Old.Width = ItemSizes.Width
AND Items_Old.Length = ItemSizes.Length
我已經儘量得到爲能夠獲得SizeID和Items_Old.Name列表有以下幾點:
Select IST.ID , Old.Name
From ItemSizes AS IST, Items_Old AS Old
Where IST.Width = Old.Width
And IST.Length = Old.Length
但是當我嘗試類似:
Insert Into Items
(SizeID)
Select IST.ID , Old.Name
From ItemSizes AS IST, Items_Old AS Old
Where IST.Width = Old.Width
And IST.Length = Old.Length
Where Items.Name = Info.Name
我得到的,因爲第二次在那裏我也試過
Insert Into Items
(SizeID)
(Select IST.ID , Old.Name
From ItemSizes AS IST, Items_Old AS Old
Where IST.Width = Old.Width
And IST.Length = Old.Length) As Info
Where Items.Name = Info.Name
,但得到了一個錯誤near "("
我想你已經在Items列表的Name列中有一些值,並且你想更新SizeID列。是嗎? – KrazzyNefarious
@BhupeshC是的,我已經認識到,我不想插入,我想更新,我一直在試圖找出現在更新的With語法。 – user2125348
這是你的數據庫,Oracle,SQL Server,MySQL等? – KrazzyNefarious