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

  • 99being99

    99being99

    2 EYLÜL 2008
  • Charles Griffin Gibson

    Charles Grif

    26 NİSAN 2006
  • Rayone GB

    Rayone GB

    14 Temmuz 2007