2011-03-14 3 views
0

J'ai des difficultés à faire une requête qui vise à obtenir le pourcentage de variation des ventes entre 2 mois.Problème de requête Sqlite

J'ai un exemple dans SQL Server qui fonctionne correctement.

Exemple:

CREATE TABLE TAB1 (SELLMONTH1 INT 
        , SELLMONTH2 INT); 

INSERT INTO TAB1 VALUES (1000,1250); 

SELECT convert(decimal(10,2) 
    , (convert(float,(SELLMONTH2 - SELLMONTH1))/SELLMONTH1) * 100) 
FROM TAB1; 

moi Retours 25.00

Comment faire la même requête dans SQLite?

J'ai essayé de diverses manières, mais revient toujours 0

Merci à l'avance

+0

Montrez ce que vous avez essayé de SQLite qui ne fonctionne pas. –

+1

Est-ce que cela ne fonctionne pas? 'SELECT 100.000 * (SELLMONTH2 - SELLMONTH1)/SELLMONTH1 FROM TAB1' –

Répondre

2

Essayez de CAST un d'entre eux comme FLOAT pour éviter la division entière (De this thread)

1

Essayez ceci:

SELECT (SELLMONTH2 - SELLMONTH1) * 100.0/SELLMONTH1 
FROM TAB1; 

Si vous souhaitez spécifiquement les diffuser sous forme de nombres flottants (ou numériques ou autres), n'utilisez pas CONVERT mais CAST à la place:

CAST(sellmonth AS float)