标签: row-number

这个查询有什么问题?无法让ROW_NUMBER()工作

SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY hrl.Frn) as Row,
        hrl.unq, hrl.LcnsId, hc.Business,hc.Name,hc.Phone,
        hrl.Frn,hrl.CallSign, hrl.gsamarkettypeid, 
        gmt.[Market Type Code] + ' - ' + gmt.gsamarkettype,
        hrl.gsalatitude,hrl.gsalongitude,
        rsc.RadioServiceCode + ' - ' + rsc.RadioService, 
                    GrantDt, ExpirationDt, EffectiveDt, 
        CancellationDt
        FROM dbo.sbi_f_HldrRgstrtnLcns hrl
        INNER JOIN dbo.sbi_f_HldrCntcts hc on 
                    hc.CallSign = hrl.CallSign
        INNER JOIN dbo.sbi_l_radioservicecodes rsc on 
                    rsc.radioservicecodeid = hrl.radioservicecodeid
        LEFT OUTER JOIN dbo.sbi_l_GSAMarketTypes gmt on 
                    gmt.GSAMarketTypeId = hrl.GSAMarketTypeId
        WHERE hc.Entity_Type = 'L'  AND hrl.LicenseStatusId IN (1)
        and Row >=1 and Row <= 20) …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server row-number

1
推荐指数
1
解决办法
767
查看次数

SQL Server 2005 - Row_Number()

我正在尝试理解在我的查询中最外层选择上使用DISITINCT时使用row_number()函数以降序排序结果时看到的异常行为,如下所示:

 SELECT   DISTINCT (ID), State_Id, Name_Of_Trip, Date_Of_Travel, Creation_Date, Locking_Id, Applicant_Name, Reference_Number, State_Name
    FROM (

    SELECT  app.ID, app.State_Id, app.Name_Of_Trip, app.Date_Of_Travel, app.Creation_Date, app.Locking_Id, app.Applicant_Name, app.Reference_Number, 
    State.Name AS State_Name, ROW_NUMBER() OVER(ORDER BY Reference_Number DESC) as rowNum  
    FROM Application_Leg AS app 
    INNER JOIN State AS state 
    ON app.State_Id = state.ID
    WHERE  (app.State_Id = 5 OR app.State_Id = 6 OR app.State_Id = 8)  AND app.Organisation_Id=12 
    AND Leg_Number IN
     (SELECT  DISTINCT Leg_Number 
     from Application_Leg as al
     INNER JOIN
     Organisation as org
     ON al.Organisation_Id = org.ID
     WHERE …
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2005 row-number

1
推荐指数
1
解决办法
1700
查看次数

SQL Server 2000行编号

我正在尝试获取顺序行编号,但无论我尝试什么都不起作用.这是我的查询

select
    l.seq, l.mn_no as mn_no, l.sb_no as sb_no,
    l.dp_no as dp_no,
    sum(costprice) as amt
from 
    dbo.mac_pur_tempdetail d
inner join 
    dbo.mac_pur_tempheader h on d.header_id = h.header_id
                              and h.ref = 'SAH1FIHC'
inner join 
    dbo.mac_actlocmap l on l.loc_main = d.loc_id
                         and l.description = 'PUR'
group by  
    l.seq, l.mn_no, l.sb_no, l.dp_no
Run Code Online (Sandbox Code Playgroud)

这是该查询的结果

1   4110        30          0000        17.5000
4   4110        20          0000        3.6000
6   4110        40          0000        6.0000
7   4110        10          0000        1.8000
14  4110        25          0000        3.6000
15  4110        50          0000        1.8000
Run Code Online (Sandbox Code Playgroud)

我试过了 …

sql sql-server-2000 row-number

1
推荐指数
1
解决办法
378
查看次数

ROW_NUMBER超过一个新列

是否可以通过row_number中的新列进行排序?我想做这样的事情:

select text1 + text2 as NEW_TEXT, row_number over (order by NEW_TEXT) from table
Run Code Online (Sandbox Code Playgroud)

但这样的排序不起作用(我得到随机结果).

t-sql sql-server-2005 row-number sql-order-by

1
推荐指数
1
解决办法
512
查看次数

SQL Server ROW_NUMBER行为

我有以下查询:

SELECT * FROM
(
    SELECT 
       a.TeacherID, a.UniversityID, 
       ROW_NUMBER() OVER (ORDER BY a.TeacherID) AS RowNum 
    FROM 
       SelectAll a  
    LEFT JOIN 
       mp_Ratings r ON a.TeacherID = r.TeacherID 
    GROUP BY 
       a.TeacherID, a.UniversityID
) AS TeacherInfo 
WHERE RowNum BETWEEN 10 AND 50
Run Code Online (Sandbox Code Playgroud)

它工作正常.现在,如果我想做类似的事情:

SELECT * FROM
(
    SELECT 
       a.TeacherID, a.UniversityID, 
       ROW_NUMBER() OVER (ORDER BY a.TeacherID) AS RowNum 
    FROM 
       SelectAll a  
    LEFT JOIN 
       mp_Ratings r ON a.TeacherID = r.TeacherID 
    GROUP BY 
       a.TeacherID, a.UniversityID
) AS TeacherInfo 
WHERE RowNum BETWEEN 10 AND 50 AND UniversityID …
Run Code Online (Sandbox Code Playgroud)

row-number sql-server-2008

1
推荐指数
1
解决办法
1万
查看次数

根据行号更新

请考虑此表:

id       Col1         Col2
--------------------------
1        nima         null
18       john         null
25       sara         null
Run Code Online (Sandbox Code Playgroud)

我有一个选择,转发这个记录:

id         Col
---------------
1          LA
2          WA
3          FL
Run Code Online (Sandbox Code Playgroud)

我想用同样的顺序,你see.for例如更新来更新上面这个表记录LAnima和...

我怎么能这样做?

谢谢

sql sql-server row-number sql-server-2008 sql-update

1
推荐指数
1
解决办法
1280
查看次数

查找多行中连续日期的开始和停止日期

我在表格中显示正确的数据时遇到了一些麻烦.我不确定要搜索什么.我不确定min(列)或max(列)会在这里帮助我.让我们看看我是否可以解释我的问题.

我的表包含这些数据:

> Code (nvarchar) | DateFrom (datetime) | DateTo (datetime)
> ========================================================= 
> 3006            | 2014-06-18 07:00:00 | 2014-06-18 08:00:00 
> 3006            | 2014-06-18 09:00:00 | 2014-06-18 22:00:00 
> 1006            | 2014-06-18 07:00:00 | 2014-06-18 09:00:00
> 1006            | 2014-06-18 08:00:00 | 2014-06-18 08:30:00 
> 1006            | 2014-06-18 08:10:00 | 2014-06-18 18:00:00
Run Code Online (Sandbox Code Playgroud)

我将以一种观点来呈现这一点.它将按代码分组.

我想要的是这个输出:

> Code | DateFrom            | DateTo
> =========================================================
> 3006 | 2014-06-08 07:00:00 | 2014-06-18 08:00:00
> 3006 | 2014-06-18 09:00:00 | 2014-06-18 22:00:00
> …
Run Code Online (Sandbox Code Playgroud)

sql sql-server row-number gaps-and-islands

1
推荐指数
1
解决办法
3805
查看次数

如何从SQL查询的每个唯一结果中提取第一个结果?

我试图从每个唯一的TnID记录中提取第一个结果,以便我可以将其拉入另一个数据库.

SELECT DISTINCT [Tenant Name]
        ,CARL_Tenant_Contacts.ID
        ,Carl_current_tenants.TnID
        ,PrId FROM CARL_Tenant_Contacts 
        JOIN CARL_Current_Tenants ON CARL_Current_Tenants.ID = CARL_Tenant_Contacts.TnID
        WHERE [Tenant Name] IS NOT NULL 
        and [Tenant Name] != ''
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所获得的代码,但它并没有完全符合我的要求.

目前的结果是:

SQL结果

(还有更多,这只是一个小例子.)

但我想要的东西会返回每个TnID的名字,例如,来自TnID1我希望Julie Robinson女士,来自TnID2我想要Julia Gregg女士,TnID3先生Andrew Leigh webb等等.

这是可行的还是我尝试不可能的?

sql sql-server row-number

1
推荐指数
1
解决办法
518
查看次数

PySpark - 从UDF获取行的索引

我有一个数据框,我需要获取特定行的行号/索引。我想添加一个新行,使其包括字母以及行号/索引,例如。“ A-1”,“ B-2”

#sample data
a= sqlContext.createDataFrame([("A", 20), ("B", 30), ("D", 80)],["Letter", "distances"])
Run Code Online (Sandbox Code Playgroud)

带输出

+------+---------+
|Letter|distances|
+------+---------+
|     A|       20|
|     B|       30|
|     D|       80|
+------+---------+
Run Code Online (Sandbox Code Playgroud)

我希望新产品是这样的,

+------+---------------+
|Letter|distances|index|
+------+---------------+
|     A|       20|A - 1|
|     B|       30|B - 2|
|     D|       80|D - 3|
+------+---------------+
Run Code Online (Sandbox Code Playgroud)

这是我一直在努力的功能

def cate(letter):
    return letter + " - " + #index
a.withColumn("index", cate(a["Letter"])).show()
Run Code Online (Sandbox Code Playgroud)

row-number user-defined-functions dataframe pyspark

1
推荐指数
1
解决办法
1759
查看次数

使用带有ORDER BY ID的Row_Number()选择行

我正在尝试选择特定行号之间的行(例如1到50或51到10等).

下面是我的表MatTk模式,所有列都允许空值:

tk_id [varchar(50)] | mat_id [varchar(50)] | ven_id [varchar(50)] | tk_rate [money]
   1023                     104                     2212               120.11 
Run Code Online (Sandbox Code Playgroud)

本文使用Row_Number()建议选择行的子集ORDER BY id但我想避免它并以表数据的自然顺序显示它.

另请查看本文SQL Server 2005 ROW_NUMBER(),不带ORDER BY,建议插入临时表,但它不是一个选项,因为该MatTk表有数百万行.

有没有办法按行号查询行而不按ID排序而不创建临时表?

sql database sql-server row-number sql-server-2008-r2

1
推荐指数
1
解决办法
73
查看次数