1
我有一張桌子,我希望更新某個欄位的值。(SQL)是否可以使用上一行中字段的值更新字段值?
基本上移動一個值,它下面的值應該繼承關於它們的值。
我不知道這個動作是否可以使用單個SQL查詢。
我的表:
CREATE TABLE `menu` (
`slot_index` int(2) NOT NULL,
`language_ID` int(2) NOT NULL,
`menuItem` text NOT NULL,
PRIMARY KEY (`slot_index`,`language_ID`),
KEY `language_ID` (`language_ID`)
)
在它的內容:
INSERT INTO `menu` (`slot_index`, `language_ID`, `menuItem`) VALUES
(1, 1, 'Home'),
(2, 1, 'Wie zijn wij'),
(21, 1, 'Missie'),
(22, 1, 'Doelen'),
(23, 1, 'Visie'),
(24, 1, 'Test'),
(3, 1, 'Wat doen wij'),
(31, 1, 'Medische kaart voor op reis'),
(32, 1, 'Huisartsenkaart'),
(33, 1, 'Huisartsenkaart anderstaligen'),
(4, 1, 'Perskamer'),
(5, 1, 'Beheer'),
(6, 1, 'FAQ'),
(7, 1, 'Ervaringen'),
(8, 1, 'Contact'),
(81, 1, 'Disclaimer'),
(9, 1, 'Links'),
(91, 1, 'Adresgegevens')
我想移動slot_index
5〜9,使場下往上移動,繼承來自上面的字段的值。
這可能與一個單一的查詢,或者我應該只是寫一個腳本?
在此先感謝。
Wolfert
如果您覺得需要更改主鍵的值,那麼該字段可能不應該是主鍵的一部分。 – 2010-01-30 23:25:19
另外,你有沒有想過如何爲該排序順序編寫ORDER BY子句?你不能只使用ORDER BY slot_id。你怎麼解決這個問題的?當菜單中有9個以上的項目時會發生什麼? – 2010-01-30 23:30:46
我還建議你閱讀這個頁面在MySQL中存儲heirarchical數據:http://dev.mysql.com/tech-resources/articles/hierarchical-data.html – 2010-01-30 23:32:28