Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème dans ma requête SQL

1 réponse
Avatar
Marianne Novello
Bonjour =E0 tous!
Je transfert une BD de Access as SQL en ce moment. Les=20
tables sont transf=E9r=E9es sans probl=E8me, mais je dois=20
recr=E9er les views (requ=EAtes). Une des requ=EAtes me cause=20
probl=E8me. Voici un bout de la requ=EAte:

SELECT tblBILoperDetail.*, IIf
(tblBILoperDetail.IDchx1 > 0, N', ' +=20
tblBILinfChx_1.strNom, '') + IIf(tblBILoperDetail.IDchx2=20
> 0, N', ' + tblBILinfChx_2.strNom, '')=20
+ IIf(tblBILoperDetail.IDchx3 > 0,=20
N', ' + tblBILinfChx_3.strNom, '') + IIf
(tblBILoperDetail.IDchx4 > 0, N', ' +=20
tblBILinfChx_4.strNom, '')=20
+ IIf(tblBILoperDetail.IDchx5 > 0,=20
N', ' + tblBILinfChx_5.strNom, '') + IIf
(tblBILoperDetail.IDchx6 > 0, N', ' +=20
tblBILinfChx_6.strNom, '') AS info1,

quand j'ex=E9cute la requ=EAte, j'ai ne message qui dit que=20
la syntaxe est incorrecte pr=E8s de '>'

Pouvez-vous me dire pourquoi et ce que je dois faire=20
S.V.P.

Merci... Marianne

1 réponse

Avatar
Fred BROUARD
1) iif n'existe pas en SQL. SQL implémente le CASE
2) utilise tu réellement du NCHAR ? (N', ') ???

SELECT tblBILoperDetail.*,
CASE
WHEN tblBILoperDetail.IDchx1 > 0
THEN N', ' + tblBILinfChx_1.strNom
ELSE ''
END
...

--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto: ******************

Marianne Novello a écrit:
Bonjour à tous!
Je transfert une BD de Access as SQL en ce moment. Les
tables sont transférées sans problème, mais je dois
recréer les views (requêtes). Une des requêtes me cause
problème. Voici un bout de la requête:

SELECT tblBILoperDetail.*, IIf
(tblBILoperDetail.IDchx1 > 0, N', ' +
tblBILinfChx_1.strNom, '') + IIf(tblBILoperDetail.IDchx2

0, N', ' + tblBILinfChx_2.strNom, '')



+ IIf(tblBILoperDetail.IDchx3 > 0,
N', ' + tblBILinfChx_3.strNom, '') + IIf
(tblBILoperDetail.IDchx4 > 0, N', ' +
tblBILinfChx_4.strNom, '')
+ IIf(tblBILoperDetail.IDchx5 > 0,
N', ' + tblBILinfChx_5.strNom, '') + IIf
(tblBILoperDetail.IDchx6 > 0, N', ' +
tblBILinfChx_6.strNom, '') AS info1,

quand j'exécute la requête, j'ai ne message qui dit que
la syntaxe est incorrecte près de '>'

Pouvez-vous me dire pourquoi et ce que je dois faire
S.V.P.

Merci... Marianne



--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto: ******************