объединены в datatable с различным количеством записей - PullRequest
1 голос
/ 20 декабря 2011

У меня есть 2 данных, один из которых:

Date         %change_1
 6/20/2011    0.112
 6/21/2011    0.2365
 6/22/2011    -0.248
6/23/2011    -0.965
6/24/2011    0.123
6/27/2011    0.6544
6/28/2011    -0.789

Другой, например:

Date         %change_2
6/20/2011    -0.45
6/22/2011    -0.6
6/23/2011    0.98
6/27/2011    -0.845

Я хочу объединить это с данными, чтобы иметь только один столбец длядата как:

Date         %change_1   %change_2
6/20/2011    0.112       -0.45
6/22/2011    -0.248      -0.6
6/23/2011    -0.965       0.98
6/27/2011    -0.6544     -0.845

Я не хочу никаких сдвигов в моих данных (которые у меня будут, если я их просто объединю)

Вот мой код

        //cherche les last price
        DataTable TickerPrice = new DataTable("Data");
        TickerPrice = CheckBloomi(TickerName + " equity", "CHG_PCT_1D", FromThisTime, ToThisTime);

        //cherche les price indexprice
        DataTable IndexPrice = new DataTable("Data");
        IndexPrice = CheckBloomi(Bchmrk, "CHG_PCT_1D", FromThisTime, ToThisTime);

        DataSet MarketData = new DataSet();
        MarketData.Merge(TickerPrice);
        MarketData.Merge(IndexPrice);

        DataTable Recap = MarketData.Tables.Add("Recap");

Спасибо

1 Ответ

0 голосов
/ 20 декабря 2011

Вам нужно что-то вроде SEMIJOIN в реляционной алгебре, в SQL это будет выглядеть примерно так:

Select * from Datatable1 D1 
where exists 
( 
    Select * from Datatable D2 where D1.Date = D2.Date 
) 

Кроме того, вы должны предоставить свой код, который не работает

...