none
SQL Sorgusu RRS feed

  • Soru

  • Merhabalar,

    Aşağıdaki şekilde 2 adet tablom var. SQL Sorgusu ile Result kısmındaki gibi bir çıktı almam gerekli. Nasıl yapabilirim? Yardımcı olabilirseniz sevinirim. İyi çalışmalar dilerim.


    • Düzenleyen Sofwarer 1 Aralık 2020 Salı 12:21
    1 Aralık 2020 Salı 12:20

Yanıtlar

  • create table Groups (productName varchar(20), Value int);
    insert into Groups (productName, Value) values 
    ('pineapple',15),
    ('apple',10),
    ('banana',20),
    ('orange',10);
    
    create table Cases (id int, productGroupName varchar(20), Status varchar(10));
    insert into cases (id, productGroupName, Status) values
    (1,'orange','ok'),
    (2,'banana','ok'),
    (3,'orange','error'),
    (4,'banana','ok'),
    (5,'banana','ok'),
    (6,'pineapple','error'),
    (7,'pineapple','error'),
    (8,'orange','ok'),
    (9,'banana','ok');
    
    select g.productName, 
       ac.cases AllCases, 
       pc.cases PassedCases,
       pc.Cases * g.Value Total
    from Groups g
    cross apply (select count(*) 
                 from Cases c 
                 where c.productGroupName = g.productName) ac(cases)
    cross apply (select count(*) 
                 from Cases c 
                 where c.productGroupName = g.productName and c.Status = 'ok') pc(cases)             ;



    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Sofwarer 2 Aralık 2020 Çarşamba 12:11
    1 Aralık 2020 Salı 15:28

Tüm Yanıtlar

  •  - MsSql'mi Kullanıyorsunuz?

     - Ado.Net mi kullanıyorsunuz, yoksa bir ORM kullanıyor musunuz?


    Sorunuzun yanıtı bu ise "Yanıt Olarak Öner" olarak işaretleyin, eğer faydalı bir yorum ise "Oy Ver"erek forumun işleyişine katkıda bulunabilirsiniz

    1 Aralık 2020 Salı 12:50
  • MSSQL. Ama farklı projeler içinde de kullanacağım için SQL sorugusu gibi genel geçer bir ifadeye ihtiyacım var

    • Düzenleyen Sofwarer 1 Aralık 2020 Salı 14:34
    1 Aralık 2020 Salı 14:33
  • create table Groups (productName varchar(20), Value int);
    insert into Groups (productName, Value) values 
    ('pineapple',15),
    ('apple',10),
    ('banana',20),
    ('orange',10);
    
    create table Cases (id int, productGroupName varchar(20), Status varchar(10));
    insert into cases (id, productGroupName, Status) values
    (1,'orange','ok'),
    (2,'banana','ok'),
    (3,'orange','error'),
    (4,'banana','ok'),
    (5,'banana','ok'),
    (6,'pineapple','error'),
    (7,'pineapple','error'),
    (8,'orange','ok'),
    (9,'banana','ok');
    
    select g.productName, 
       ac.cases AllCases, 
       pc.cases PassedCases,
       pc.Cases * g.Value Total
    from Groups g
    cross apply (select count(*) 
                 from Cases c 
                 where c.productGroupName = g.productName) ac(cases)
    cross apply (select count(*) 
                 from Cases c 
                 where c.productGroupName = g.productName and c.Status = 'ok') pc(cases)             ;



    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    • Yanıt Olarak İşaretleyen Sofwarer 2 Aralık 2020 Çarşamba 12:11
    1 Aralık 2020 Salı 15:28