这是content
表:
ContentID | CategoryID | Position | Other1 | Other2
===================================================
1 | 1 | NULL | abcd | efgh
2 | 1 | NULL | abcd | efgh
3 | 1 | NULL | abcd | efgh
4 | 2 | NULL | abcd | efgh
5 | 2 | NULL | abcd | efgh
6 | 2 | NULL | abcd | efgh
这些是我将要运行的查询:
SELECT ContentID FROM content WHERE CategoryID = 1 ORDER BY Position
SELECT ContentID FROM content WHERE CategoryID = 2 ORDER BY Position
现在,我想实现上移,下移,上移和下移功能。我需要做的就是用数字填充“位置”列:
ContentID | CategoryID | Position
=================================
1 | 1 | 1
2 | 1 | 2
3 | 1 | 3
4 | 2 | 1
5 | 2 | 2
6 | 2 | 3
是否可以通过MySQL中的单个查询来实现?就像是:
UPDATE content
SET Position = <ROW_NUMBER>
WHERE CategoryID = 1
ORDER BY Position
UPDATE content
SET Position = <ROW_NUMBER>
WHERE CategoryID = 2
ORDER BY Position
这应该工作
update
content,
(
select
@row_number:=ifnull(@row_number, 0)+1 as new_position,
ContentID
from content
where CategoryID=1
order by position
) as table_position
set position=table_position.new_position
where table_position.ContentID=content.ContentID;
但我更喜欢先应用此方法,以取消设置用户定义的变量
set @row_number:=0;
您可以在这样的一条语句中做到这一点
update
content,
(
select
@row_number:=ifnull(@row_number, 0)+1 as new_position,
ContentID
from content
where CategoryID=1
order by position
) as table_position,
(
select @row_number:=0
) as rowNumberInit
set position=table_position.new_position
where table_position.ContentID=content.ContentID;
我有这样一个df: 其中ID是另一个df的主键和唯一键,该df是此df的源。集群不是密钥,不同的ID通常具有相同的集群值;不管怎么说,这是我必须掌握的信息。 我想获得的是这个数据框: 如果这是不可能的,像这样的字典也可以: 我试过很多方法都没有成功。。似乎无法将列表作为数据帧值插入。。无论如何,我认为以某种巧妙的方式进球应该不会那么困难。。对不起,如果我想不起来了,但我对编码是新手 有什么建议吗?
问题内容: 如何过滤包含另一列的行?例如,如果我们有两列A,B的DT,是否可以使用B.contains(A)过滤行?不仅B是否包含来自DT的所有A中的一些A值,而且还只是一行。 问题答案: 您可以使用由和(如果需要)过滤器列和每行创建的掩码: 解决方案的差异 -输入已更改:
我刚开始学习Laravel,我发现以下错误: 在gebruikers中插入未知列“更新位置”(naam、wachtwoord、更新位置、创建位置) 我知道错误来自迁移表时的timestamp列,但我没有使用字段。我以前在学习Laravel教程时使用它,但现在我正在制作(或试图制作)我自己的东西。即使不使用时间戳,也会出现此错误。我似乎找不到使用它的地方。代码如下: 控制器 路线 模型 我一定忘了什
我正在尝试删除此df中的所有行,其中“DB Serial”列包含字符*: 我正在使用: 但我得到这个错误:
在下面的代码中,我绑定记录形成一个视图模型,它使用的是一个可观察的代码,我还提高了intifyProperties tychange,现在我有一个按钮设置,它使用navigation.pushasync的方法去一个新的页面,在那里我更新数据库记录,我已经在这个新页面中创建了一个列表视图,并使用这里显示的相同的绑定来绑定记录,每当我添加它更新的东西,但如果我按后退按钮,回到这个EntryTabPag
问题内容: 我有一个拥有Google广告的广告。我的网站主要是AJAX,不需要刷新浏览器。这意味着我的广告也不会刷新,这也不理想,因为用户整天盯着一个广告。 因此,我想要一种刷新页面上特定内容的方法。我找到了很多解决方案,但是它们没有用。例如,使用JQuery的html函数: 这设法刷新整个页面,不知道如何。我也可以向包含Google广告的HTML页面发出AJAX请求,但我想它的作用与上述尝试相同