【发布时间】:2014-03-29 12:13:55
【问题描述】:
我有两张表album_new 和song_new。 song_new 表有列album_id,通过这个关系我可以知道哪个专辑有多少首歌。其中 album_id 和 song_id 是自动递增的。
album_new
album_id | album_name
---------+-----------
1 | abs
2 | def
song_new
song_id | album_id | song_name
1 | 1 | yahoo
2 | 1 | lalala
3 | 2 |kukukuku
当我像这样将一个表的值插入另一个表时
INSERT INTO album(album_name) SELECT album_name FROM album_name
album_id 已更改,我无法将 song_new 表插入歌曲表。因为现在关系不准确。我如何将这两个表值插入到已经有一些值的另外两个表专辑和歌曲中。我可以通过使用 foreach 循环的服务器端代码来做到这一点,但我可以在 sql 中做到这一点吗?任何机构都可以为我提供语法吗?
编辑:这是我要插入上述表格值的两个表格
专辑
album_id | album_name
---------+-----------
1 | aaa
2 | bbb
歌曲
song_id | album_id | song_name
1 | 1 | old_song1
2 | 2 | old_song2
3 | 2 | old_song3
【问题讨论】:
-
如果歌曲表的 id 相对于该专辑的其他歌曲出现故障,这不是问题。你可以通过id识别专辑,你有什么问题?
-
我想将专辑插入另一个表,所以如果其他表已经有 5 张专辑,专辑 'abs' 的 id 将为 6,'def' 将为 7。当我将歌曲表插入另一个表时桌子。雅虎歌曲显示在错误的专辑下
-
好的,你可以在id上添加一个偏移量,等于其他表的最大值,我会尽快去电脑写。
标签: sql