SORU
23 EYLÜL 2009, ÇARŞAMBA


() SQL Row_Number Where fonksiyonu

Bir soru ile cevap buldum Row_Number() where. fonksiyon Bir sorgu çalıştığımda aşağıdaki hatayı alıyordum.

 "Msg 4108, Level 15, State 1, Line 1 
  Windowed functions can only appear in the SELECT or ORDER BY clauses."

Burada çalıştım sorgu. Eğer birisi bu çözmek için nasıl biliyorsa, lütfen bana bildirin. Şimdiden teşekkürler.

SELECT employee_id 
FROM V_EMPLOYEE 
WHERE row_number() OVER ( ORDER BY employee_id ) > 0 
ORDER BY Employee_ID

~Joseph

CEVAP
23 EYLÜL 2009, ÇARŞAMBA


Bu sorunu çözmek için, bir CTE seçin ifadenizi sarın ve sonra CTE karşı sorgu ve where pencere işlevi sonuçlarını kullanabilirsiniz.

WITH MyCte AS 
(
    select   employee_id,
             RowNum = row_number() OVER ( order by employee_id )
    from     V_EMPLOYEE 
    ORDER BY Employee_ID
)
SELECT  employee_id
FROM    MyCte
WHERE   RowNum > 0

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bratayley

    Bratayley

    30 Aralık 2010
  • thelonelyisland

    thelonelyisl

    23 Aralık 2005
  • Tips On Linux

    Tips On Linu

    26 Temmuz 2008