Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 15567|Svar: 3

[Tips] Tips til gruppeforespørgsler efter gruppe

[Kopier link]
Opslået på 04/08/2017 13.04.14 | | | |
1.Gruppere efter bruges alene, og forespørgselsresultaterne viser kun én post i en gruppe.
     VÆLG * FRA 'medarbejder'; Showresultater

Vælg * fra medarbejdergruppen efter køn; Showresultater

Kun to poster vil blive vist, denne værdi er åbenlyst forkert, der bruges ingen indsamlingsfunktion, og den viste værdi er kun de første data for hver gruppe.
Hvis du vil gruppere og vise data, så overvej at bruge detgroup_concat() funktion,




2.Brugt med group_concat()-funktionen,De angivne feltværdier i hver gruppering vises
Kom nu
Vælg køn,group_concat(navn) fra medarbejdergruppen efter køn;

Brug derefter eksplode- og imploderfunktionerne til at udtrække dataene.
3.Bruges med mængdefunktioner,Mængdefunktioner inkluderer count(), sum(), avg(), max() og min().
Vælg *,Antal (køn) som samlet fra medarbejdergruppen efter køn;


4 Bruges med at have
"At have betingede udtryk", hvilket kan begrænse outputresultatet. Kun resultatet af det betingede udtryk vises.
Eksempel:
[farve=hvid !vigtigt]
?

markere køn, tæl(køn) fra Medarbejdergruppe af Sex med Tælling(køn) >= 3;


Udfald:
[farve=hvid !vigtigt]
?

1

2

sex | Tælling (køn
Mand | 3





havingconditional expression" virker på de grupperede poster.
5.Grupperet efter flere felter
Vælg * fra medarbejder fra gruppen efter køn, score;
Forespørgselsresultaterne grupperes først efter køn og derefter efter score
6 medBrug med sammenrullning
Ved at bruge med rollup tilføjes en post til slutningen af alle poster, som er summen af alle ovenstående poster
1

Vælg køn, antal (køn) fra medarbejdergruppen efter køn med rollup;




Udfald:
[farve=hvid !vigtigt]
?

1

2

3

4

sex | Tælling (køn)
Kvinde | 1
Mand | 5
null | 6




Hvis det for eksempel er en streng, vil navnet generere et resultat af typen "Zhang San, Li Si, Wang Wu", altså summen af navne.

Score

Antal deltagere1MB+10 bidrage+5 Sammenbrud årsag
Lille skarn + 10 + 5 Bananprogrammet belønner, typografien er lidt problematisk

Se alle vurderinger





Tidligere:Boykot opførelsen af motorveje på Renxing Road i Jining
Næste:Flere almindelige metoder til optimering af SQL-sætningsforespørgsler i MySQL
 Udlejer| Opslået på 04/08/2017 13.10.17 |
Ligheder og forskelle mellem at have og hvor

                    At have er lignende med where, du kan filtrere dataene, hvordan man skriver udtrykket efter hvor, og hvordan skriver man det efter at have
                    hvor forespørger dataene for kolonner i tabellen
                    At have arbejder med kolonner i forespørgselsresultater, filtrering af data
                    #查询本店商品价格比市场价低多少钱 outputvarer med en lavere pris på over 200 yuan
                    vælg goods_id,good_name,market_price - shop_price som s fra varer med s>200 ;
                    Du kan ikke bruge where, fordi s er forespørgselsresultatet, og where kan kun filtrere for feltnavne i tabellen
                    Hvis du bruger hvor, er det:
                    Vælg goods_id.goods_name fra varer, hvor market_price - shop_price > 200;

                    #同时使用where与having
                    vælg cat_id,goods_name,market_price - shop_price som s fra varer, hvor cat_id = 3 med s > 200;
                    #查询积压货款超过2万元的栏目, samt betalingsefterslæbet i denne kolonne
                    Vælg cat_id,sum(shop_price * goods_number) som t fra varegruppen ved cat_id har s > 20000
                    #查询两门及两门以上科目不及格的学生的平均分
                          Idé:
                            #先计算所有学生的平均分
                             Vælg navn, gennemsnit (score) som PJ fra STU-gruppen efter navn;
                            #查出所有学生的挂科情况
                            Vælg navn, score<60 fra Stu;
                                    #这里score<60 er en vurderingssætning, så resultatet er sandt eller falsk, og det sande er 1 i MySQL, og 0 er falsk
                            #查出两门及两门以上不及格的学生
                            vælg navn, sum(score<60) som målmand fra STU-gruppen ved navn med målmand > 1;
                            #综合结果
                            Vælg navn, sum(score<60) som målmand, avg(score) som PJ fra STU-gruppen ved navn med målmand >1;
Opslået på 04/08/2017 17.47.19 |


Dette kan indsættes i koden
Opslået på 07/08/2017 13.47.02 |
Udlejergruppe efter post-check* Ingen fejl?
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com