SORU
13 NİSAN 2015, PAZARTESİ


Minimum değere göre iki sütun

SQL Server 2008 R2 kullanıyorum.

İki sütun en az değer bir tablo sıralamak istiyorum.

Tablo bu gibi görünüyor:

ID: integer; 
Date1: datetime; 
Date2: datetime.

Benim veri en az iki tarihlerine göre sıralanmış olmasını istiyorum.

Bu tablo bu şekilde sıralamak için en kolay yolu nedir?

CEVAP
13 NİSAN 2015, PAZARTESİ


BOŞ sütunlar DEĞİL. Eklemek gerekirCASEiçine deyimORDER BYaşağıdaki fıkra:

SELECT Id, Date1, Date2
FROM YourTable
ORDER BY CASE 
           WHEN Date1 < Date2 THEN Date1 
           ELSE Date2 
         END 

NULL sütun. GibiZohar Kavga Etmeyineğer sütun null ise yorum yazdı aşağıdaki ISNULL (ama daha iyi COALESCE kullanmak yerine ANSI SQL standard çünkü 8**,) kullanabilirsiniz:

SELECT Id, Date1, Date2
FROM YourTable
ORDER BY CASE 
           WHEN COALESCE(Date1, '01/01/1753') < COALESCE(Date2, '01/01/1753') THEN Date1 
           ELSE Date2 
         END

Hakkında okuyabilirsinizANSIstandart* here*11 tarih biçimi.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GenTechPC

    GenTechPC

    1 Temmuz 2007
  • Kevin Bruckert

    Kevin Brucke

    30 Aralık 2006
  • Nightmare2005

    Nightmare200

    14 Ocak 2007