SORU
31 Mart 2009, Salı


Nasıl bir alan bir tarih birleştirmek için başka bir alana zaman - MS SQL Server

Uğraşıyorum bir özü, 2 datetime sütun var. Bir sütun tarihleri ve bir kez olarak gösterilen depolar.

Nasıl tip 1 sütun datetime Bu iki alanı birleştirmek için tablo sorgulayabilir miyim?

Tarihler

2009-03-12 00:00:00.000
2009-03-26 00:00:00.000
2009-03-26 00:00:00.000

Kere

1899-12-30 12:30:00.000
1899-12-30 10:00:00.000
1899-12-30 10:00:00.000

CEVAP
31 Mart 2009, Salı


Sadece iki ekleyebilirsiniz.

  • eğerDate sütun Time part Her zaman sıfırdır
  • veTime sütun Date part da her zaman sıfırdır(temel tarih: 1, 1900) Ocak

Eklemeden doğru sonuç verir.

SELECT Combined = MyDate   MyTime FROM MyTable

Gerekçe (/dnolan ErikE şeref)

It works like this due to the way the date is stored as two 4-byte `Integers` with the
left 4-bytes being the `date` and the right 4-bytes being the `time`.  

Its like doing $0001 0000   $0000 0001 = $0001 0001

Yeni SQL Server 2008 türleri ile ilgili düzenleme

Date Time 16 *'de kullanılmaya başlanmıştır. Eğer ekleme ısrar ederseniz, Combined = CAST(MyDate AS DATETIME) CAST(MyTime AS DATETIME) kullanabilirsiniz

Ve 2008 (Martin Smith şeref), SQL Server hassas Edit2 ilgili kaybı

How to combine date and time to datetime2 in SQL Server? hassas ve SQL Server 2008 kullanarak kaybını önlemek için bir göz var.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Codecourse

    Codecourse

    3 ŞUBAT 2009
  • lilstevie89

    lilstevie89

    25 Mart 2011
  • TROPFEST

    TROPFEST

    27 Mart 2007