Bonjour à tous

J'aimerai exécuter cette requête en utilisant java/Mysql et le drivers JDBC Connector/J

voici mes requêtes :

Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
SELECT @nbr_ligne:=count( `LOCUS_ID` ) 
FROM ALL_RES_SAMP
WHERE `LOCUS_ID` = 'Bmag0018';
 
SELECT LOCUS_ID, ALLELE_ID, (count( LOCUS_ID )/@nbr_ligne) 
AS FREQUENCY
FROM ALL_RES_SAMP
WHERE LOCUS_ID = 'Bmag0018'
GROUP BY ALLELE_ID;

La 1ere recupère le nombre de ligne totale et la 2eme se sert de la variable pour diviser.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
rs = stmt.executeQuery(" 
 
SELECT @nbr_ligne:=count( `LOCUS_ID` ) FROM ALL_RES_SAMP WHERE `LOCUS_ID` = 'Bmag0018'; 
 
SELECT LOCUS_ID, ALLELE_ID, (count( LOCUS_ID )/@nbr_ligne) AS FREQUENCY FROM ALL_RES_SAMP WHERE LOCUS_ID = 'Bmag0018' GROUP BY ALLELE_ID;");

je lève une SQLExeption :
Erreur de syntaxe près de 'SELECT LOCUS_ID, ALLELE_ID, (count( LOCUS_ID )/@nbr_ligne) AS FREQUENCY FROM ALL' à la ligne 1
Ya t-il un moyen d'y arriver sans passer par une variable dans java et tout faire comme je le souhaite ?

Merci
kimlaw95