Path: ...!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!cleanfeed1-b.proxad.net!nnrp1-2.free.fr!not-for-mail From: yves Subject: Re: Transformer une BD .sqlite en .js avec python version 3.8 Newsgroups: fr.comp.lang.python References: <871qx34yrn.fsf@izac.org> User-Agent: Pan/0.144 (Time is the enemy; 28ab3ba git.gnome.org/pan2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 09 May 2022 08:43:04 GMT Lines: 41 Message-ID: <6278d418$0$18723$426a74cc@news.free.fr> Organization: Guest of ProXad - France NNTP-Posting-Date: 09 May 2022 10:43:04 CEST NNTP-Posting-Host: 91.175.128.103 X-Trace: 1652085784 news-2.free.fr 18723 91.175.128.103:36378 X-Complaints-To: abuse@proxad.net Bytes: 2772 Le Mon, 09 May 2022 01:06:12 -0500, msamandine a écrit: > Merci pour cette solution. Par contre, je cherchais un bout de code qui > puisse générer ce genre de table automatiquement, sans que l'on précise > à chaque fois "article = 4", article = 3, etc. En effet, la BD que j'ai > mis en ligne n'est qu'un extrait. En réalité, j'ai plus de 900 entrées. > Est-il possible d'automatiser ce morceau de code ? J'ai aussi essayé d'écrire du sql pur. Je n'aurai pas été capable de trouver le code de Benoit, faute de connaître et de savoir utiliser le CASE. Je suis arrivé à ça: #+BEGIN_SRC sqlite :db "" create table t(nb_art INTEGER,genre TEXT,Nb_Enfants INTEGER); ..import usenet1.csv t ..headers on create view if not exists N1 as select Nb_Enfants,genre, count (nb_art) as n1 from t where nb_art = "1" group by Nb_Enfants, genre ; create view if not exists N2 as select Nb_Enfants,genre, count (nb_art) as n2 from t where nb_art = "2" group by Nb_Enfants, genre ; create view if not exists N3 as select Nb_Enfants,genre, count (nb_art) as n3 from t where nb_art = "3" group by Nb_Enfants, genre ; create view if not exists N4 as select Nb_Enfants,genre, count (nb_art) as n4 from t where nb_art = "4" group by Nb_Enfants, genre ; select Nb_Enfants,genre, n1,n2,n3,n4 from N1 natural join N2 natural join N3 natural join N4; #+end_src Code qui pose le même problème relatif au nombre d'articles codés "en dur". > Est-il possible d'automatiser ce morceau de code ? Peut-être est ce possible en pur SQL, mais hors de mes compétences. Par contre, avec Python, j'imagine bien vaguement une porte de sortie. Commence par trouver la requête SQL qui donne l'ensemble des "nombres d'articles" possibles. @+ -- Yves