Questions tagged «recursive-query»

15
如何创建MySQL分层递归查询
我有一个MySQL表,如下所示: id | name | parent_id 19 | category1 | 0 20 | category2 | 19 21 | category3 | 20 22 | category4 | 21 ...... 现在,我想有一个简单的MySQL查询,只需向其提供ID [例如说'ID = 19'],然后就应该获取其所有子ID [即结果应具有ID '20,21,22']。 ...此外,孩子的等级也不知道它会有所不同... 另外,我已经有了使用for循环的解决方案.....如果可能的话,让我知道如何使用单个MySQL查询实现相同的解决方案。

6
如何在MySQL中执行递归SELECT查询?
我得到一张下表: col1 | col2 | col3 -----+------+------- 1 | a | 5 5 | d | 3 3 | k | 7 6 | o | 2 2 | 0 | 8 如果用户搜索“ 1”,程序将查看col1具有“ 1”的,然后它将在col3“ 5”中得到一个值,然后程序将继续在其中搜索“ 5”,col1并且将得到“ 3”在中col3,依此类推。因此它将打印出: 1 | a | 5 5 | d | 3 3 | …

5
MySQL如何填充范围内的缺失日期?
我有一个包含2列的表格,日期和分数。它最多有30个条目,最近30天内每个条目一个。 date score ----------------- 1.8.2010 19 2.8.2010 21 4.8.2010 14 7.8.2010 10 10.8.2010 14 我的问题是缺少某些日期-我想看看: date score ----------------- 1.8.2010 19 2.8.2010 21 3.8.2010 0 4.8.2010 14 5.8.2010 0 6.8.2010 0 7.8.2010 10 ... 我需要从单个查询中获取:19,21,9,14,0,0,10,0,0,14 ...这意味着缺失的日期填充有0。 我知道如何获取所有值,以及如何使用服务器端语言遍历日期和缺少空格。但这是否可以在mysql中完成,所以我可以按日期对结果进行排序并得到丢失的片段。 编辑:在此表中还有另一个名为UserID的列,所以我有30.000用户,其中一些在此表中具有得分。如果日期<30天前,我会每天删除日期,因为我需要为每个用户提供最近30天的分数。原因是我正在绘制过去30天的用户活动图,并绘制一个图表,我需要用逗号分隔的30个值。因此,我可以说在查询中获得USERID = 10203活动,查询将获得30分,最近30天中的每一分。我希望我现在更加清楚。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.