2011-05-03 54 views
0

我有一個數據表,我想根據一列的值獲取不同的行,而不是基於所有列獲取不同的行在數據表的行中。因爲我們可以得到不同的行作爲ToTable如下Datatable基於一列的值的不同行...而不是所有列

datatableName.DefaultView.ToTable("true","ColName"); 

因爲(),我們必須指定要顯示所有列。請幫助我,這樣我就可以獲得所有列顯示不同的行,並且只有一列用於獲取不同的行。

例樣本行,我有如下

ID Application English Spanish German 
1 sam   thnks thnkd thkng 
2 smp   thnks thnke thnkp 
3 anp   same same same 

我想所有這些wwhich有對英語列值不同的西班牙/德國Cloumn值的行.....

幫助在這方面,我們將不勝感激......提前

感謝

+0

不太清楚你需要究竟是什麼,如果你提供圖像或輸出的指定格式u需要的是更好的 – Dotnet 2011-05-03 12:08:19

+1

你找到答案?我正在尋找相同的解決方案。需要所有列,但不同的數據集/數據表的單列 – 2011-07-12 09:23:44

回答

0

如果你正在尋找如何找到行,其中列不匹配,日方便的ats

SELECT * FROM table WHERE column2 != column3 

但你必須在你需要爲不同的meens該行不相同的所有列運行DISTICT一個真的不同。

YOu也可以在2列上有不同的子選擇,然後如果你願意,可以加入其餘的列。

-1

你可以做

var x = (from r in dt.AsEnumerable() select r["ABC"]).Distinct().ToList(); //dt is the datatable 

希望這有助於

-1

得到的答案從msdn forum here

你可以試試下面的代碼。

datatableName.DefaultView.ToTable("true","ID","Application","English","Spanish","German"); 
0

當你說「我想要得到所有這些wwhich有不同的西班牙/德國Cloumn重視反英列值的行...」,這是不是DISTINCT的手段,這是一個過濾器。

你可以只是這樣做:

datatableName.DefaultView.RowFilter = "English <> German"; 
DataTable result = datatableName.DefaultView.ToTable("differentEngGer"); 
datatableName.DefaultView.RowFilter = null; //reset the view to not filter anything 
相關問題