在MySql中的SQL语句中,可以轻松地使用以下方法创建一行值:
选择1、2、3、4、5、6、7、8、9、10;
这将生成包含从1到10的数字的单行,但是否可能有包含这些值的单列。
一种简单的方法是递归CTE:
with recursive cte as (
select 1 as n
union all
select n + 1
from cte
where n < 10
)
select cte.*
from cte;
如果有几个值,也可以使用union all
创建它们:
select *
from (select 1 as n union all select 2) n
问题内容: 这个问题已经在这里有了答案 : 从日期范围生成天数 (29个答案) 2年前关闭。 在mysql中生成给定范围内的一系列日期的最佳方法是什么? 我想到的应用程序是编写一个报表查询,该查询将为每个日期返回一行,而不管是否有要报告的数据。最简单的形式: 我曾尝试创建一个包含许多日期的表,但这似乎是一个较差的解决方法。 问题答案: 我认为拥有 日历表 是个好主意;您可以获得很多报告和查询功能,
问题内容: 这个问题已经在这里有了答案 : 如何在MySQL中返回数据透视表输出? (8个答案) 6年前关闭。 我在将行移至列和将列移至行时遇到问题。如果只是将行转置为列或将列转置为行,则可以这样做。 这是我的数据表 我想得到以下输出 等等.. 有人知道该怎么做吗?非常感谢! 问题答案: 你可以这样 输出: 这是 SQLFiddle 演示
问题内容: 如何从MySQL查询生成一系列连续数字(每行一个),以便可以将它们插入表中? 例如: 我只想为此使用MySQL(不使用PHP或其他语言)。 问题答案: 如果您需要表中的记录,并且希望避免并发问题,请按照以下方法操作。 首先,您创建一个用于存储记录的表 其次,创建一个存储过程,如下所示: 最后调用SP: 结果
问题内容: 这个问题已经在这里有了答案 : 具有唯一值的排列 (19个答案) 7年前关闭。 我正在寻找列表的唯一排列,x = [“ $ 5”,“ $ 10”,“ $ 10”,“ TAX”,“ $ 5”,“ 20%”,“ BOGO”,“ BOGO”,“ TAX “](9人一组) 我目前正在做的是 但是,这需要很长时间才能运行,我想知道是否有人可以为我提供更有效的解决方案。 问题答案: 这将花费很长时
问题内容: 我的表每隔十分钟就有一次数据: 是否可以为MySQL制定一个SQL查询,每小时返回一系列平均值? 在这种情况下,它应该返回: 问题答案: 尚不清楚是否要在几天内汇总平均值。 如果您希望26号午夜与27号午夜的平均值不同,则可以修改Mabwi的查询: 请注意该子句中的其他内容。没有这个,查询将把从到的所有数据平均在一起,而不考虑它发生的日期。
我有一个data.table,我需要生成另一个data.table,它只列出每列的唯一值。一个例子: 从 到 实现这一点最有效的方法是什么?