如果Mysql中的计算字段为0,则从结果集中删除记录
假设我有一个MySQL查询,如下所示:如果Mysql中的计算字段为0,则从结果集中删除记录,mysql,Mysql,假设我有一个MySQL查询,如下所示: SET@group=0; 选择玩家Id,如果(新组,@Group:=@Group+1,@Group)作为组Id 从[表] 按玩家Id排序; 这将给我一个Player\u Ids和计算出的Group\u Ids的列表(都是数字)。如果我的查询结果中组Id为0,我想删除任何记录。有人能帮我吗,因为我的SQL技能很低。这应该可以解决您的问题: SET @group = 0; DELETE FROM [TABLE] WHERE Player_Id IN (
SET@group=0;
选择玩家Id,如果(新组,@Group:=@Group+1,@Group)作为组Id
从[表]
按玩家Id排序;
这将给我一个
Player\u Id
s和计算出的Group\u Id
s的列表(都是数字)。如果我的查询结果中组Id
为0
,我想删除任何记录。有人能帮我吗,因为我的SQL技能很低。这应该可以解决您的问题:
SET @group = 0;
DELETE FROM [TABLE] WHERE Player_Id IN (
SELECT u.Player_Id FROM (
SELECT
Player_Id,
IF(New_Group, @group:=@group + 1, @group) AS Group_Id
FROM [TABLE]
ORDER BY Player_Id
) AS u
WHERE
u.Group_Id = 0
);
您是否尝试过在DELETE语句而不是SELECT语句中实现它们?@kojow7我只想从结果中删除它们,而不是从您可以在何处使用的数据库中删除它们