2011-10-13 74 views
2

让我说我有数百万行的数据库,我想创建php批处理文件,在所有特定行上应用某些更改。在MYSQL上运行更新

例子:假设我们有上百万这样的数据库行(ID-CAT-SUBCAT)

INSERT INTO `drink` VALUES (1, 'Non-Alcoholic', 'tea'); 
INSERT INTO `drink` VALUES (2, 'Non-Alcoholic', 'tea'); 
INSERT INTO `drink` VALUES (3, 'Non-Alcoholic', 'coffee'); 
INSERT INTO `drink` VALUES (4, 'Non-Alcoholic', 'pepsi'); 

,所以我想的PHP命令,说

只有猫= '非酒精' 和有SUBCAT =“茶”从猫做猫的变化=“非酒精”是猫=“茶”

所以最终的结果将是

INSERT INTO `drink` VALUES (1, 'tea', 'tea'); 
INSERT INTO `drink` VALUES (2, 'tea', 'tea'); 
INSERT INTO `drink` VALUES (3,'Non-Alcoholic', 'coffee'); 
INSERT INTO `drink` VALUES (4,'Non-Alcoholic', 'pepsi'); 

谢谢大家帮忙

回答

1

下面的SQL查询会做你想要更换:

UPDATE `drink` 
    SET cat = 'tea' 
    WHERE cat = 'Non-Alcoholic' 
    AND subcat = 'tea' 

与您使用的PHP MySQL的为准结合就包起来。