2017-03-21 9 views
0

私はアクセスのクエリを使用してスケジュールを印刷しようとしています。問題は、フィールドが空白のままになっているタスクに誰もスケジュールされていない場合です。問題は誰もこのタスクのために誰も割り当てられていないので誰もスケジューリングの全期間にわたってタスクのためにスケジューリングされていないときです。だから私の質問は、 ''または 'N/A'のような何かのためにResponsable.ResponsableAbregeのnull値を切り替えるために私のクエリで単純なケースを使用することができますか私は間違った角度からそれを見ていますか?ここでは、コードは次のようになります。変換ピボットのケースを使用したMSアクセス

TRANSFORM First(Responsable.ResponsableAbrege) AS PremierDeResponsableAbrege 
SELECT wCalendrier.Entite, Entite.DescriptionAbrege, Tache.Tache, Fonction.Abréviation, Module.Module, Fonction.NoFonction, Tache.NoTache, First(wCalendrier.PremierResponable) AS PremierDePremierResponable 
FROM RecupererResponsable, Fonction INNER JOIN ([Module] INNER JOIN (Équipe INNER JOIN (((wCalendrier INNER JOIN Tache ON wCalendrier.NoTache = Tache.NoTache) INNER JOIN Responsable ON wCalendrier.NoResponsable = Responsable.NoResponsable) INNER JOIN Entite ON wCalendrier.Entite = Entite.Entite) ON (Équipe.NoÉquipe = Responsable.Equipe) AND (Équipe.NoÉquipe = Responsable.Equipe)) ON Module.NoModule = Tache.Module) ON Fonction.NoFonction = Tache.Fonction 
GROUP BY wCalendrier.Entite, Entite.DescriptionAbrege, Tache.Tache, Fonction.Abréviation, Module.Module, Fonction.NoFonction, Tache.NoTache 
PIVOT "D" & [Sequence] In ("D1","D2","D3","D4","D5","D6","D7","D8","D9","D10","D11","D12","D13","D14","D15"); 

答えて

0
MS AccessのSQLで

代わりのCASEあなたがIIFswitch

iif(isnull(FIRST(Responsable.ResponsableAbrege)),'N/A', FIRST(Responsable.ResponsableAbrege)) 
+0

のいずれかを使用する必要がありません完全にaltough、私はまだ全体の行をしませに関する問題を抱えているIIFが働いていたおかげで、時間枠全体にスケジュールされているものがないかどうかを示します。私のINNER JOINと何かが関係していると思います。まだ調査中ですが、ありがとう! – Markasius

+0

私は厳密にあなたのSQLクエリを見直しませんでしたが、あなたが説明したことから、私はあなたのINNER結合のいくつかをLEFT結合に変えます –

関連する問題