Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/11/2010, 16h13   #1
Membre du Club
 
clément
Étudiant
Inscription : septembre 2010
Messages : 131
Détails du profil
Informations personnelles :
Nom : clément
Âge : 21

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2010
Messages : 131
Points : 59
Points : 59
Par défaut Faire un if et un right ?

Bonjour !

Je suis en train de convertir une requete sql sous access en une "vrai" requete sql xD

Mais j'ai un petit probleme sous access j'ai ca :

Code :
, iIf(M.montantaccepte > 0,M.montantaccepte,0) AS [Mt accepted]
et
Code :
1
2
3
 
RIGHT([datedebut],4)+"-"+LEFT(RIGHT([datedebut],7),2)+"-"+LEFT([datedebut],2) AS Debut
	   , RIGHT([datefin],4)+"-"+LEFT(RIGHT([datefin],7),2)+"-"+LEFT([datefin],2) AS Fin
Le probleme est qu'il y a une erreur sur la ligne du IF et qu'il ne connait pas RIGHT et LEFT

Est ce qu'il y a des fonctions equivalente ? car j'ai chercher sur internet et je trouve pas grand chose... on me parle de IF EXIST, LEFT JOIN et RIGHT JOIN -_- vive les mots clés ^^

merci d'avance



EDIT : c'est la ligne du IF qui fessait en sorte qu'il disent qu'il conanit pas les LEFT et RIGHT donc enfait j'ai juste un probleme sur le ">" il dit qu'il connait pas et sur les ""-""


EDIT2 : j'ai resolu le probleme des "-" en mettant '-'
Pour le if j'ai trouvé que les if en sql marchait pas ... et qu'il fallait que je fasses un CASE mais le ">" est toujours inconnu au bataillon !
donc je vois pas comment faire pour faire la condition : montantaccepte>0
Mycose est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 18h29   #2
Modérateur

 
Avatar de elsuket
 
Homme Nicolas Souquet
Administrateur de base de données
Inscription : janvier 2005
Messages : 4 660
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Souquet
Âge : 30
Localisation : Thaïlande

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2005
Messages : 4 660
Points : 8 690
Points : 8 690
Bonjour,

Dommage que vous n'ayez pas donné votre code.
Une piste :

Code :
CASE WHEN M.montantaccepte > 0 THEN  M.montantaccepte ELSE 0 END
@++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes.
Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012
elsuket est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/11/2010, 18h39   #3
Membre du Club
 
clément
Étudiant
Inscription : septembre 2010
Messages : 131
Détails du profil
Informations personnelles :
Nom : clément
Âge : 21

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2010
Messages : 131
Points : 59
Points : 59
La j'ai pu le code mais c'est exactement ce que j'ai mis !

Enfin de mémoire j'ai mis
Code :
Case M.montantaccepte WHEN M.montantaccepte > 0 THEN M.montantaccepte ELSE 0
Mais y a une erreur sur le ">" :/
Mycose est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 19h16   #4
Modérateur

 
Avatar de elsuket
 
Homme Nicolas Souquet
Administrateur de base de données
Inscription : janvier 2005
Messages : 4 660
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Souquet
Âge : 30
Localisation : Thaïlande

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2005
Messages : 4 660
Points : 8 690
Points : 8 690
Oui, car c'est l'une ou l'autre des syntaxes qui est possible, mais pas les deux en même temps

N'oubliez pas le END

@++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes.
Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012
elsuket est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h36.


 
 
 
 
Partenaires

Hébergement Web