none
DataSet合併的問題! RRS feed

  • 問題

  • 請問一下:

        我有二個table,結構都一樣如下:

    ID  name  price

    1    user01   20

    2    user02   30

    3    user03   40

    ---------------------------------------------------------------------

    ID  name  price

    1   user01   50

    2   user02   60

    3   user03   80

     

       我想要在Dataset中merge成:

    ID   Name   Price1   price2  

    user01   20  50

    user02   30  60

    user03    40 80 

    -------------------------------------------------------------------

    請問這要如何做到呢?

     謝謝回答。

     

     

     

     

     

    2006年6月20日 上午 06:30

解答

  • 看是要在第一個Table或是第二個Table加入一個Column(Price2),然後跑迴圈新增到加入Column的Table內。範例大概如下

      dtAdd.Columns.Add("Price2", Type.GetType("System.Int16"))

      dim row as data.datarow

      dim row2 as data.datarow

      for each row in dt

         for each row2 in dtAdd

           if  (row.item("ID")=row2.item("ID")) and (row.item("name")=row2.item("name")) then

                    row2.item("Price2")=row.item("price")

           end if

        next

    next

    大概就像上面這樣架構寫。

    2006年6月20日 上午 09:14
    版主

所有回覆

  • 看是要在第一個Table或是第二個Table加入一個Column(Price2),然後跑迴圈新增到加入Column的Table內。範例大概如下

      dtAdd.Columns.Add("Price2", Type.GetType("System.Int16"))

      dim row as data.datarow

      dim row2 as data.datarow

      for each row in dt

         for each row2 in dtAdd

           if  (row.item("ID")=row2.item("ID")) and (row.item("name")=row2.item("name")) then

                    row2.item("Price2")=row.item("price")

           end if

        next

    next

    大概就像上面這樣架構寫。

    2006年6月20日 上午 09:14
    版主
  • Hi Lolota

      請問一下,這個可以用sql 的指令來完成嗎?是希望在資料庫端,就可以做好。可以做到嗎?謝謝回答。

    2006年6月22日 上午 05:29
  • 可以的。

    SELECT         TB1.ID, TB1.Name, TB1.Price, TB2.Price2
    INTO                TABLE3 (欲新增的Table Name)
    FROM             Table1 TB1 INNER JOIN
                              Table2 TB2 ON TB1.ID = TB2.ID AND TB1.Name = TB2.Name

    2006年6月22日 上午 05:49
    版主