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 15/05/2011, 18h19   #1
Invité de passage
 
Inscription : octobre 2009
Messages : 31
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 31
Points : 1
Points : 1
Par défaut Conversion requete access vers mssql

Bonjour,
J'ai crée ubase access ainsi que certaines requetes.

J'ai transferer et converti cette basse en base MS SQL sans probleme mais une de mes requetes ne fonctionne pas car elle ne doit pas conporter la bonne instruction equivalente a IIF d'access.

Ma requete est celle ci:

Code :
1
2
SELECT jos_joomleague_matches.match_id, jos_joomleague_clubs.name AS Team, jos_joomleague_clubs_1.name AS Team2, jos_joomleague_matches.match_date, jos_joomleague_matches.matchpart1_result, jos_joomleague_matches.matchpart2_result, jos_joomleague_rounds.name, IIf([jos_joomleague_matches.matchpart1_result]>[jos_joomleague_matches.matchpart2_result],3,IIf([jos_joomleague_matches.matchpart1_result]=[jos_joomleague_matches.matchpart2_result],1,0)) AS pointequipe1
FROM jos_joomleague_rounds INNER JOIN (jos_joomleague_clubs AS jos_joomleague_clubs_1 INNER JOIN (jos_joomleague_matches INNER JOIN jos_joomleague_clubs ON jos_joomleague_matches.matchpart1 = jos_joomleague_clubs.id) ON jos_joomleague_clubs_1.id = jos_joomleague_matches.matchpart2) ON jos_joomleague_rounds.id = jos_joomleague_matches.round_id;

Quelqu un aurait il une petite idée?

D'avance merci
lstephan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2011, 21h28   #2
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 138
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 138
Points : 2 466
Points : 2 466
Envoyer un message via Yahoo à zinzineti
IIF n'existe pas sous SQL SERVER.

Tu peux utiliser à la place CASE
__________________
Etienne ZINZINDOHOUE
Billets-Articles
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 08h22   #3
Invité de passage
 
Inscription : octobre 2009
Messages : 31
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 31
Points : 1
Points : 1
Ok merci

Je vais essayer de modifier ma requete en utilsant Case
lstephan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 09h40   #4
Modérateur

 
Avatar de elsuket
 
Homme Nicolas Souquet
Administrateur de base de données
Inscription : janvier 2005
Messages : 4 668
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 668
Points : 8 718
Points : 8 718
Bonjour,

La réécriture devrait donner ceci :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT		M.match_id
		, C.name AS Team
		, C1.name AS Team2
		, M.match_date
		, M.matchpart1_result
		, M.matchpart2_result
		, R.name
		CASE
			WHEN M.matchpart1_result > M.matchpart2_result THEN 3
			WHEN M.matchpart1_result = M.matchpart2_result THEN 1
			ELSE 0
		END AS pointequipe1			
FROM		dbo.jos_joomleague_matches AS M
INNER JOIN	jos_joomleague_rounds AS R
			ON R.id = M.round_id
INNER JOIN	dbo.jos_joomleague_clubs AS C
			ON M.matchpart1 = C.id
INNER JOIN	dbo.jos_joomleague_clubs AS C1
			ON C1.id = M.matchpart2
@++
__________________
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é
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h53.


 
 
 
 
Partenaires

Hébergement Web