Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  SQL: Select-i muutmine Countiks märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
TechGuy
HV kasutaja
TechGuy

liitunud: 25.12.2012




sõnum 18.12.2015 12:04:26 SQL: Select-i muutmine Countiks vasta tsitaadiga

Tere,
Olen natuke hädas ja ei tea täpselt, et kuidas saaks teha sedasi, et praegu saan tulemuse kirje näol kätte, aga oleks tarvis saada count(*)-na

Praegune SQL
SELECT
T1.Klient as client_ID,
T1.mail as Email,
T2.suvandi_nimi as Template_name,
T2.Kampaania_nimi as campaign_name,
T2.saatmis_id, -- unikaalne kampaania ID
T2.Saatmis_KP,
T2.avamis_kp,
T2.klickimis_kp
FROM 
   Tabel1 T1
Join
   Tabel2 T2
   ON
    (T1.PK = T2.PK)
left JOIN
    Value_tabel val1
       ON val1.PK = T2.PK AND (val1.VAL_ID in(425095))
left JOIN
    value_tabel val2
       ON val2.PK = T2.PK AND (val2.VAL_ID in(425095))
where T2.TEMPLATE_NAME= ('yllatus')
and T2.SEND_DATE >('2015.12.01')


Tulemusena tahaks kogu tulemust teada, et mitu isikut sai vastava saatmis_tulemusi, et
0 kirja sai 20000 Isikut, 1 kirja sai 1345 isikut, 2 kirja sai 251 isikut, aga sama saatmise kampaania raames.

Tänud.
Kommentaarid: 28 loe/lisa Kasutajad arvavad:  :: 1 :: 0 :: 22
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 18.12.2015 13:20:09 vasta tsitaadiga

GROUP BY
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
TechGuy
HV kasutaja
TechGuy

liitunud: 25.12.2012




sõnum 18.12.2015 14:33:38 vasta tsitaadiga

Kuidas ma seda group By-ga peaks umbes saama?
Kommentaarid: 28 loe/lisa Kasutajad arvavad:  :: 1 :: 0 :: 22
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 18.12.2015 14:37:14 vasta tsitaadiga

Grupeerid esmalt kõik kirjad saaja järgi ära, seejärel grupeerid antud tulemuse omakorda saajate järgi ära, et kes kui palju kirju sai.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
2korda2
HV kasutaja

liitunud: 19.07.2003




sõnum 18.12.2015 15:18:11 vasta tsitaadiga

SELECT "veergude loend, mille kombinatsiooni kaupa vaja loendada"+",count(*)" FROM "tabelid ja nende vahelised seosed" GROUP BY "veergude loend, mille kombinatsiooni kaupa vaja loendada"

PS. ma ei saa aru vajadusest LEFT JOIN abil value_tabel külge liita (ja veel 2 korda). Mis selle eesmärk on? Eriti, kui väidad, et praegu "saad tulemuse kirje näol kätte". Soovitan prooviks pärida ilma LEFT JOIN tingimusteta ja vaadata, kas tulemus erineb.
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum
TechGuy
HV kasutaja
TechGuy

liitunud: 25.12.2012




sõnum 25.02.2016 14:37:38 vasta tsitaadiga

Lõplik lahendus mis suudab seda teha on selline:

SELECT Number_of_Sent_emails, count(*)AS Number_of_Client_IDs
FROM (SELECT mel.CODE as client_ID, COUNT(mel.EMAIL) as Number_of_Sent_emails
      FROM table1 mel
         -- siin vahemik millega saab ära teha parameetrid.
          -- where    mel.TEMPLATE_NAME = 'surprise_et'
          --  and  mel.SEND_DATE_FROM > '2014.01.01'
           
         --  AND mel.OBJ_VAL_ID in (4250950)--type
         --  AND mel.OBJ_VAL_ID in (4250951)--name
      GROUP BY mel.CODE
     ) a
GROUP BY Number_of_Sent_emails
ORDER BY Number_of_Sent_emails;
Kommentaarid: 28 loe/lisa Kasutajad arvavad:  :: 1 :: 0 :: 22
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  SQL: Select-i muutmine Countiks
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.