SQL somo la 16: Jinsi ya kuandaa matokeo ya Mtihani kwa kutumia database

Katika somo hili tutakwenda kumalizia program yetu ya kutengeneza matokeo ya wanafunzi kwa kuweka position kwa kila somo na position ya ujumla.

Kuweka poston kwa kila somo:

Sasa tutaanza na kutafuta position ya mwanafunzi kwa kila somo. Pia tutamuwekea Daraja lake.

 

Hapa tunakwenda kutumia kanuni nyingine. Kwanza tutatengeneza table alias ambayo tutanaka kuitengenezea position. Kwa mfano tutaanza na mtihani wa kusoma. KWa kuwa tayar tunajuwa jinsi ya kukokotoa Daraja yaan Grade hapo sitazungumznia. 

 

Kuhusu position kwanza tutatengeneza table alias. badala ya luita kusoma yutaipa alias Reading. Kisha ili tuweze kutafuta positio kwa simo husika hapa hatutatumia rank() over(). HApa tutatumia mfummo mwingine wa ku count, na kulinganisha alama.

(

    SELECT COUNT(kusoma)

    FROM majibu

    WHERE (kusoma > reading)

  ) AS kus_pafasi,

 

utaona hapo kwanz atime count row zinazohuscolumn ya kusoma, kwa kuangalia maksi kubwa. HApo itaangalia yenye maksi kubwa ndio inatangulia. mfano code hizo zitakupa matokeo haya

Changamoto ya kwanz ahapo utangunduwa kuw aimeanza kuhesabu kutoka 0 kwenda juu. sasa ili tuanzie moja tutaongeza namba moja hapo kwenye ku count

 

Sasa ngoja tuongeze na column ya grade. Lengo tuwe na somo, grade na position .

SELECT DISTINCT(concat(jina_la_kwanza, "  ", jina_la_pili)) as jina, kusoma as Reading,

CASE 

     WHEN kusoma > 40 THEN 'A'

     WHEN kusoma > 30 AND kusoma <41 THEN 'B'

     WHEN kusoma > 20 AND kusoma < 31 THEN 'C'

     WHEN kusoma > 10 AND kusoma < 20 THEN 'D'

     ELSE 'F'

END as GRADE,

 

(

    SELECT COUNT(kusoma) + 1

    FROM majibu

    WHERE (kusoma > reading)

  ) AS Rank,


 

kuandika, kuhesabu, (kusoma + kuandika + kuhesabu) as jumla, round(((kusoma + kuandika + kuhesabu)/3),1) as wastani FROM majibu;

 

Sasa ngoja tufanye hivyo kwa masomo yote yaliobakia.

SELECT DISTINCT(concat(jina_la_kwanza, "  ", jina_la_pili)) as jina, kusoma as Reading, 

CASE 

     WHEN kusoma > 40 THEN 'A'

     WHEN kusoma > 30 AND kusoma <41 THEN 'B'

     WHEN kusoma > 20 AND kusoma < 31 THEN 'C'

     WHEN kusoma > 10 AND kusoma < 20 THEN 'D'

     ELSE 'F'

END as GRADE,

 

(

    SELECT COUNT(kusoma) + 1

    FROM majibu

    WHERE (kusoma > reading)

  ) AS Rank,

kuandika as writing,

CASE 

     WHEN kuandika > 40 THEN 'A'

     WHEN kuandika > 30 AND kuandika <41 THEN 'B'

     WHEN kuandika > 20 AND kuandika < 31 THEN 'C'

     WHEN kuandika > 10 AND kuandika < 20 THEN 'D'

     ELSE 'F'

END as GRADE,

 

(

    SELECT COUNT(kuandika) + 1

    FROM majibu

    WHERE (kuandika > writing)

  ) AS Rank,


 

kuhesabu as arthmetics,

CASE 

     WHEN kuhesabu > 40 THEN 'A'

     WHEN kuhesabu > 30 AND kuhesabu <41 THEN 'B'

     WHEN kuhesabu > 20 AND kuhesabu < 31 THEN 'C'

     WHEN kuhesabu > 10 AND kuhesabu < 20 THEN 'D'

     ELSE 'F'

END as GRADE,

 

(

    SELECT COUNT(kuhesabu) + 1

    FROM majibu

    WHERE (kuhesabu > arthmetics)

  ) AS Rank,

 

(kusoma + kuandika + kuhesabu) as jumla, round(((kusoma + kuandika + kuhesabu)/3),1) as wastani FROM majibu;

 

 

Sasa tunakwenda kumalizia na kuweka position ya ujumla, kw akuangalia jumla ya asomo yake yote.

 

SELECT DISTINCT(concat(jina_la_kwanza, "  ", jina_la_pili)) as jina, kusoma as Reading, 

CASE 

     WHEN kusoma > 40 THEN 'A'

     WHEN kusoma > 30 AND kusoma <41 THEN 'B'

     WHEN kusoma > 20 AND k">...

Download App Yetu

Jifunze zaidi, na wasiliana nasi ukiwa na App yetu. Bofya link hapo chini kuweza kuipakua.

Download Now Bongoclass

Nyuma Endelea


Je umeipenda post hii ?

Ndio            Hapana            Save post
Author: Rajabu image Tarehe: 1970-01-01 03:33:44 Topic: Database Main: ICT File: Download PDF Views 782

Share On:

Facebook WhatsApp
Sponsored links
👉1 Kitau cha Fiqh    👉2 kitabu cha Simulizi    👉3 Kitabu cha Afya    👉4 Madrasa kiganjani    👉5 Sira ya Mtume Muhammad (s.a.w)    👉6 Simulizi za Hadithi Audio   

Post zinazofanana:

SQL - MySQL somo la 8: Jinsi ya kuweka data (taarifa) kwenye database

Katika somo hili utajifunza jinsi ya kuweka data kwenye database, ku edit pamoja na kufuta kwa kutumia SQL na Myql interface

Soma Zaidi...
SQL - somo la 13: Jinsi ya kutumia CASE kwenye SQL

katika somo hili utakwend akujifunza jinsi ya kutumia case kwenye databse ili kuchakata taarifa za matokeo

Soma Zaidi...
Database somo la 22: Primary Key na Foreign Key

Katika somo hili utakwend akujifunza kuhusu Primary Key na Foreign Key

Soma Zaidi...
SQL somo la 14: Jinsi ya kutafuta rank na position kwa kutumia sql

Katika somo hili utakwend akujifunza jinsi ya kutafuta rank ama position kwenye data base yako kwa kutumia sql. Pia utajifunza kuhusu table alias

Soma Zaidi...
Database somo la 26: Baadhi ya function za SQL ambayo hutumika kubadili data

Function hizi ni muhimu katika kubadili data kabla ya kuzionyesha. Hii ni muhimu ili kupata structure maalum ya data.

Soma Zaidi...
SQL somo la 19: Stored Procedure katika MySQL na Tofauti na Function

Somo hili ni muendelezo wa pale tulipoishia katika somo lililopita, hapa tutakwenda kusoma Stored Procedure katika MySQL na Tofauti na Function

Soma Zaidi...
SQL somo la 15: Jinsi ya kutumia sql function kwenye mysql

Katika somo hili utakwenda kujifunza baadhi ya function kwenye sql na jinsi ya kuzitumia.

Soma Zaidi...
SQL - MySQL somo la 3: Jinsi ya kutengeneza database

Katika somo hili utakwenda kujifunza jinsi ya kutengeneza database kwenye mysql kwa kutumia interface ya mysql na kwa kutumia sql langauge

Soma Zaidi...
SQL - MySQL somo la 9: Jinsi ya kusoma data kwenye database

Katika somo hili utakwenda kujifunza jinsi ya kusoma data kutoka kwenye database. Pia utajifunza jinsi ya ku limit kiasi cha data ambazo zitaonekana.

Soma Zaidi...
SQL somo la 20: Jinsi ya kuunganisha table kwneye database

Katika somo hili utakwend akujifunz akuunganisha table zaidi ya moja kwneye database.

Soma Zaidi...