Re-bonjour ! Toujours dans ma lancé dans le SQL, j'ai maintenant besoin de sélectionner en fonction de valeur donnée. L'expression prend 3 valeurs. Ne vous moquez pas de moi en voyant mes jolies conditions !
J'ai un peu mis en forme pour faciliter la lecture, car sur une seule ligne c'est un peu effrayant
1 2 3 4 5 6 7 8 9 10 11 12 | SELECT * FROM History CASE ? --Si la valeur du ? est WHEN "all" THEN --On ne fait rien WHEN "+" THEN WHERE TYPE = "+" --On ne sélectionne que les + WHEN "-" THEN WHERE TYPE = "-" --On ne sélectionne que les - END ORDER BY ? --On trie par la valeu de la variable qui va etre donnée. Ici par les id ou les prix CASE ? --Si la valeur du ? est WHEN "ASC" THEN ASC --Si ? est "ASC" on tri dans l'ordre croissant WHEN "DESC" THEN DESC --Si ? est "DESC" on tri dans l'ordre décroissant END |
Voilà voilà, en espérant que vous avez compris ce que je veux faire… Je vous met le tableau de ma table :
Id | Type | Amount | Date | Comment |
---|---|---|---|---|
1 | + | 12.36 | 15/02/15 | Merci mamie ! |
2 | - | 3.25 | 18/05/15 | P'tit sandwich ! |
Et voici l'erreur que me renvoie mon interpréteur :
1 | /usr/local/lib/site_ruby/1.9.1/sqlite3/database.rb:91:in `initialize': near "CASE": syntax error (SQLite3::SQLException) |
En gros, il aime pas ce qu'il y a à côté de CASE
… Qu'est ce qui ne va pas ?
Merci de votre aide!
+0
-0