数据表中有4条记录,怎么将这4条记录循环显示出7条记录?

那片夕阳 2023-01-05 14:17:56

数据表中有4条记录,怎么将这4条记录循环显示出7条记录?

表:tb(id,name),表中数据如下:

id      name
01     小明
02     王磊
03     张飞
04     高峰

通过SQL语句得到如下记录效果:
01     小明
02     王磊
03     张飞
04     高峰
01     小明
02     王磊
03     张飞

...全文
242 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 版主 2023-01-06
  • 打赏
  • 举报
回复

--测试数据
if not object_id(N'tab') is null
    drop table tab
Go
Create table tab([id] nvarchar(22),[name] nvarchar(22))
Insert tab
select N'01',N'小明' union all
select N'02',N'王磊' union all
select N'03',N'张飞' union all
select N'04',N'高峰'
Go
--测试数据结束
SELECT id,
       t.NAME
FROM
(SELECT *, ROW_NUMBER() OVER (ORDER BY id) rn FROM tab) t
    JOIN master..spt_values
        ON type = 'P'
           AND number <= 6
           AND (number % 4 + 1) = rn;

img

吉普赛的歌 版主 2023-01-05
  • 打赏
  • 举报
回复 1

USE tempdb
GO
IF OBJECT_ID('dbo.[tb]') IS NOT NULL 
    DROP TABLE dbo.[tb]
GO
CREATE TABLE dbo.[tb](
[id] NVARCHAR(MAX)
,[name] NVARCHAR(MAX)    
)
GO
SET NOCOUNT ON
INSERT INTO dbo.[tb] VALUES(N'01',N'小明')
INSERT INTO dbo.[tb] VALUES(N'02',N'王磊')
INSERT INTO dbo.[tb] VALUES(N'03',N'张飞')
INSERT INTO dbo.[tb] VALUES(N'04',N'高峰')
----------- 以上为测试表及测试数据 -----------

SELECT TOP 7 a.* 
FROM tb AS a CROSS JOIN MASTER.dbo.spt_values AS b
WHERE b.type='P'
ORDER BY b.number
/*
id    name
01    小明
02    王磊
03    张飞
04    高峰
01    小明
02    王磊
03    张飞
*/

幸福感奇差 2023-01-05
  • 打赏
  • 举报
回复 1

不一定是 4 和 7,假设循环显示 n,那么把这个 n 做一个序号列 id,从 1 开始。
需要循环显示 m 条记录,m 条记录做一个序号列 id2,从 0 开始。
对 id 列取模 m,余数是新列 mod,用 mod 和 id2 左连接匹配即可。

独立储能的现货电能量与调频辅助服务市场清协调机制(Matlab代码实现)内容概要:本文围绕“独立储能的现货电能量与调频辅助服务市场清协调机制”展开研究,提了一种基于Matlab代码实现的协调优化模型。该模型综合考虑独立储能在电力现货市场和调频辅助服务市场中的双重参与角色,通过数学建模与优化算法实现两个市场的联合清,旨在提高储能资源的利用效率和经济效益。文中详细阐述了模型构建过程,包括目标函数设定、约束件设计以及求解方法,并通过Matlab仿真验证了所提机制的有效性与可行性。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及从事电力市场相关工作的技术人员。; 使用场景及目标:①用于研究独立储能参与多电力市场的行为建模与优化决策;②为电力市场机制设计者提供技术支持,推动储能商业化应用;③作为高校或科研机构在电力市场、能源互联网等方向的教学与课题研究参考资料。; 阅读建议:建议读者结合Matlab代码逐段理解模型实现细节,重点关注目标函数与约束件的数学表达与实际物理意义之间的对应关系,同时可拓展至其他类型储能或多主体博弈场景进行二次开发与验证。

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧