31.07.2015 Views

Janvier 2003

Janvier 2003

Janvier 2003

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

create function lister(char,char) returns charas 'select $1 tram groupe where $1 = $2 ;' language 'sql';Une utilisation de la fonction lister(char,char) est donné par:=> select lister(coll,'i') tram groupe;lister---------ll(7 rows)5.2Généraliser la commande définie en 5.1 en complétant la fonction:create function compter(char) returns ...as 'select ... ;' language 'sql';La fonction, compter (char), doit compter le nombre de foisqu'une lettre donnée apparaît dans groupe.Question 6. (2pts) Ecrire la fonction estdans(char) qui a commeargument un caractère et qui retourne la valeur booléenne truesi le caractère est dans groupe sinon false.create function estdans(char) returns boolas 'select à compléter ;' language 'sql';Question 7. (6pts) Pour terminer, on décide de mettre tous lescaractères de groupe et leur nombre d'apparition respectif dans unetable newgroupe.=> create table newgroupe(lettre char,quantité integer);(la quantité d'une lettre est le nombre de fois qu'elle apparaît dansgroupe) .7.1 Ecrire une commande pour insérer seulement toutes les lettresde groupe prises une seule fois (pas de duplication) dansnewgroupe (on ne se préoccupera pas de la colonne quantité).7.2 Ecrire une commande qui met à jour (update) newgroupe en ymettant les nombres d'apparition des lettres dans la colonnequantité (utiliser la fonction compter (char) dans update).7.3 Quelle est la lettre dont la quantité est la plus élevée. (penserà un select interne).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!