none
Aynı tablodaki kolonu aktarma RRS feed

  • Soru

  • Merhaba,

    Aşağıdaki gibi bir yapım var tablodaki tarihleri cekip ayni taplodaki yil kolonuna sadece yilini alarak aktarmak istiyorum.

    Aşağıdaki sorgu bana yilları getiriyor bir çok yol denedim ama (Subquery returned more than 1 value.) bu hatadan kurtulamadım.

    SELECT DATENAME(yyyy,Tarih)FROM dbo.Gorev

    Tarih                           Yil

    2009-15-06              2009

    Bu konuda yardımcı olursanız sevinirim

    Teşekkürler,


    Olacak!

    22 Temmuz 2012 Pazar 08:09

Yanıtlar

Tüm Yanıtlar

  • Merhabalar,

    İstediğinizi "SELECT [sütun ismleri] INTO [yeni tablo ismi] from [kaynak tablo ismi]" yardımıyla yapabilirsiniz, buna bulk insert deniyor, burada sizin için bir kaynak mevcut, kolay gelsin.


    Eğer doğru cevap vermiş isem lütfen yanıtlandı olarak işaretleyin, yardımcı olmuş isem lütfen yardımcı olarak oylayın.
    Please mark my reply as answered if it works or vote as helpful if it gives you some idea.



    22 Temmuz 2012 Pazar 09:27
  • yapmak istediğiniz için View oluşturursanız, sonra da tablo yerine bu view ile çalışırsınız

    CREATE VIEW vwGorev as

    SELECT *, DATENAME(yyy,Tarih) as Trh_Yil FROM dbo.Gorev

    bu viewdan Trh_Yil kolonunu kullanabilirsiniz

    ikinci. cümlede kullandığınız (Subquery returned more than 1 value) sizin istemediğiniz bir sonuç ise

    yani tek bir Yil değerine ihtiyacınız var ise bunu SELECT DISTINCT DATENAME(yyy,Tarih) FROM dbo.Gorev ile almayı deneyin

    farklı yılların olması 2009,2010 vs.. durumunda, sizin istediğiniz yıl bunlardan hangisi ? (en küçük olan mı? en büyük olan mı?)

    eğer bir den fazla yıl oluyor ise 

    SELECT MAX(YEAR(Tarih)) FROM dbo.Gorev veya

    SELECT MIN(YEAR(Tarih)) FROM dbo.Gorev yazarak tek bir sonucun gelmesi sağlanır


    22 Temmuz 2012 Pazar 09:33
  • Merhaba,

    Tek bir yıl değil orda ne kadar tarih varsa ben onu aynen alıp yıl tablosuna sadece yıllarını alarak eklemek..


    Olacak!

    22 Temmuz 2012 Pazar 16:42
  • Selam Bozkurt,

    Aşağıdaki Update cümleciği yeterli olacaktır.

    update Gorev set Yil = year(Tarih)


    SQL Server, SQL Server 2012 Denali and T-SQL Tutorials

    • Yanıt Olarak İşaretleyen m.bozkurt 23 Temmuz 2012 Pazartesi 12:44
    23 Temmuz 2012 Pazartesi 06:23
  • Teşekkürler maceraya gerek yokmuş  :)

    Olacak!

    23 Temmuz 2012 Pazartesi 12:45