페이지 저장 프로 세 스(3)sqlserver 에서 더욱 정확 한 페이지 결 과 를 만 듭 니 다.
 
--        
--             ,             ,        
--          ,         
CREATE TABLE #order 
( 
number BIGINT, 
orderseqno VARCHAR(36), 
) 
insert into #order 
SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY oi.CreateDate DESC) AS rownumber,oi.OrderSeqNO 
FROM OrderInfo oi WHERE oi.OrderSeqNO LIKE '%2%' ) AS o 
WHERE o.rownumber BETWEEN 10 AND 20 
SELECT * FROM #order INNER JOIN OrderDetail od ON od.OrderSeqNO=#order.orderseqno 
DROP TABLE #order 
 
--SELECT TOP 10 oi.OrderSeqNO, oi.GoodsName ,ci.CompanyName,od.* 
--FROM OrderInfo oi INNER JOIN CompanyInfo ci ON oi.CompanyID=ci.CompanyID 
--LEFT JOIN OrderDetail od ON oi.OrderSeqNO=od.OrderSeqNO 
--  row_unmber()     
--          10   ,     10   ,  10    
--             ,           ,            
--                ,          1:N   ,            
--       
-- CLUSTERED INDEX INDEX_OrderInfo ON OrderInfo (OrderSeqNo) 
--         
--SET STATISTICS IO ON 
select * from 
(SELECT ROW_NUMBER () OVER (ORDER BY oi.createdate DESC) AS rownumber,oi.orderseqno ,od.OrderDetailID 
FROM OrderInfo oi LEFT JOIN OrderDetail od ON oi.OrderSeqNO=od.OrderSeqNO 
WHERE oi.OrderSeqNO LIKE '%2%' 
) AS o 
WHERE rownumber BETWEEN 10 AND 20 
--        
--             ,             ,        
--          ,         
CREATE TABLE #order 
( 
number BIGINT, 
orderseqno VARCHAR(36), 
) 
insert into #order 
SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY oi.CreateDate DESC) AS rownumber,oi.OrderSeqNO 
FROM OrderInfo oi WHERE oi.OrderSeqNO LIKE '%2%' ) AS o 
WHERE o.rownumber BETWEEN 10 AND 20 
SELECT * FROM #order INNER JOIN OrderDetail od ON od.OrderSeqNO=#order.orderseqno 
DROP TABLE #order 
--       ,        
--1、           ,   C#     ,                   ,        
--2、              ,         ,            ,      ,   C#  
--     
--   ,              ,          ,          ,              
--       ROW_NUMBER()      bigint,   int 
--           
--        
CREATE TABLE #temp 
( 
rownumber bigint, 
orderseqno VARCHAR(36), 
goodsname VARCHAR(50), 
companyname VARCHAR(100) 
) 
--        
CREATE TABLE #detail 
( 
orderseqno VARCHAR(36), 
detailid UNIQUEIDENTIFIER, 
unitprice DECIMAL(12,2), 
Qty int 
) 
--             
insert into #temp 
SELECT * 
--oo.rownumber, oo.OrderSeqNO, oo.GoodsName, oo.CompanyName 
FROM 
(SELECT ROW_NUMBER () OVER (ORDER BY oi.createdate DESC) AS rownumber, 
oi.OrderSeqNO, oi.GoodsName ,ci.CompanyName 
FROM OrderInfo oi INNER JOIN CompanyInfo ci ON oi.CompanyID=ci.CompanyID 
WHERE oi.CreateDate<GETDATE() 
) AS oo 
WHERE rownumber BETWEEN 10 AND 20 
--     
DECLARE @temp_cursor CURSOR 
--      
SET @temp_cursor=CURSOR FOR SELECT #temp.orderseqno,#temp.goodsname FROM #temp 
--                   
DECLARE @orderseqno VARCHAR(36),@goodsname varchar(50) 
--     
OPEN @temp_cursor 
FETCH NEXT FROM @temp_cursor INTO @orderseqno,@goodsname 
--    ,      ,          
WHILE @@FETCH_STATUS=0 
BEGIN 
INSERT INTO #detail 
SELECT od.OrderSeqNO,od.OrderDetailID, od.UnitPrice,od.Qty 
FROM OrderDetail od 
WHERE od.OrderSeqNO=@orderseqno 
FETCH NEXT FROM @temp_cursor INTO @orderseqno,@goodsname 
END 
--     
CLOSE @temp_cursor 
DEALLOCATE @temp_cursor 
SELECT * FROM #temp 
SELECT * FROM #detail 
--      
DROP TABLE #temp 
DROP TABLE #detail 
                이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
페이지 의 자동 페이지 나 누 기 실현1. 머리말 국경절 연 휴 에 기숙사 에 살 면서 블 로그 원 을 계속 방문 하기 시 작 했 는데 많은 채소 새 (본인 포함) 들 이 자동 으로 페이지 를 나 누 는 기능, 즉 js 를 통 해 페이지 의 페이지 를 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.