2017-01-20 1 views
2

私は7列のビューを持っています。 4つの列に同じ情報が含まれていますが、3つの他の列のうち2つには、1つの列(これらのうち3つ)に何か(NOT NULL)が含まれる場合にNULLが含まれます。列「Gewicht、aantal、klant」は、3行すべてで同じ情報を含む4つの最初の列と1つの行にマージする必要があります。 これらの行を1行にマージしてビューを作成するにはどうすればよいですか?ビューの行を新しいビューにマージする

> 
Produtielijn     Datum_tijd    Artikel  PRorder    Gewicht aantal  klant 
Afzaklijn 3 (Groot Loosbroek) 2017-01-16 15:55:04.000 0118903G34 PR0800055654.006 NULL NULL   30041 NE06-07 Garretsen 
Afzaklijn 3 (Groot Loosbroek) 2017-01-16 15:55:04.000 0118903G34 PR0800055654.006 NULL 205   NULL 
Afzaklijn 7 (BB Veghel)   2017-01-02 16:40:32.000 0125995AA11 PR0800055388  NULL NULL   31488 NE49-69 Mohle(Jarco) 
Afzaklijn 7 (BB Veghel)   2017-01-02 16:40:32.000 0125995AA11 PR0800055388  2600 NULL   NULL 
Afzaklijn 7 (BB Veghel)   2017-01-02 16:40:32.000 0125995AA11 PR0800055388  NULL 4    NULL 

私はビューは次のようになりたい::

Produtielijn     Datum_tijd    Artikel  PRorder    Gewicht aantal  klant 
Afzaklijn 3 (Groot Loosbroek) 2017-01-16 15:55:04.000 0118903G34 PR0800055654.006  NULL  205  30041 NE06-07 Garretsen 
Afzaklijn 7 (BB Veghel)   2017-01-02 16:40:32.000 0125995AA11 PR0800055388   2600  4   31488 NE49-69 Mohle(Jarco) 

答えて

0

まず第一に、あなたのデータを整理したい

は今のように見える表示します。第二に

、常にはあなただけmaxgroup byを使用することができますNULL「非値」で、あなたのGewichtaantalklant各列の値ごとに1行を持っていると仮定すると:

select Produtielijn 
     ,Datum_tijd 
     ,Artikel 
     ,PRorder 
     ,max(Gewicht) as Gewicht 
     ,max(aantal) as aantal 
     ,max(klant) as klant 
from View 
group by Produtielijn 
     ,Datum_tijd 
     ,Artikel 
     ,PRorder 
+0

非常に実際にシンプルです。どうも –

関連する問題