我有一个名为user_favs的表,如下所示:
id | user_id | post_id
----------------------
50 | 291 | 1027
51 | 10 | 180
52 | 771 | 1027
53 | 92 | 133
54 | 523 | 1027
如何在php中设置数据库查询以删除包含post_id 1027的所有行?
我知道如何为单个条目执行此操作:
DELETE FROM user_favs WHERE post_id = 1027
但我不知道如何删除包含post_id 1027的所有行。
是这样的:
DELETE * FROM user_favs WHERE post_id = 1027
我不想在不知道的情况下尝试将整个事情捣碎;)
答案 0 :(得分:3)
这样:
$cnt1 = @arr;
# this gives the length of the array 'arr'
$cnt2 = @arr[ @indices_arr ];
# this gives the last element of the @arr[ @indices_arr ];
实际上不会只删除一行。它将删除符合条件DELETE FROM user_favs WHERE post_id = 1027
答案 1 :(得分:1)
我很确定第一个声明会起作用。无论哪种方式,我建议你在进行任何更改之前备份你的数据库,甚至更多,我建议你在流浪盒或数据库中进行这种类型的试验,你不在乎你可以创建的那个你的本地主机。 而不是删除,检查您的代码,你可以做: SELECT * FROM user_favs WHERE post_id = 1027 如果结果是你要删除的元组,那么看看它是否有效,whoala!