list數據去重復資料庫
⑴ C#中 list<object> 去除重復的數據 求最簡單的方法!!
//導入linq命名空間,然後distinct一下就可以了.關鍵代碼如下:
usingSystem.Linq;
//比如,list實例為list坦此
varobj=list.Distinct();
//或者麻煩點要根據list的欄位xxx過濾就梁握是
varobj_1=frompinlistselectp.xxxdistinct();
(1)list數據去重復資料庫擴展閱讀
list()函數與array()類似,只是它可以在一次操作中從一個數組內提取多個值,同時為多個變數賦值。其形橡信慶式如下:
voidlist(mixed?)從資料庫或文件中提取信息時,這種構造尤其有用。例如,假如你希望格式化並輸出從一個文本,文件中讀取信息。文件的每一行都包含用戶信息,如姓名、職業和喜愛的顏色,每一項用豎線分隔。典型的一行如下所示:
NinoSanzi|profesionalgolfer|green
可以通過一個簡單的循環使用list()來讀取每一行,將各部分數據賦給變數,按照需要格式化並輸出數據。
⑵ datalist讀取的數據有重復,怎麼才能讓相同的數據只顯示一條
1、從資料庫方面考慮 select distinct name from users
2、如果你datalist中的相同數據是有序(相同的ID在一起)的
eg: ID
1
1
2
3
用以下方法(原理:相同ID的只取一次):
for(int x = 0; x < datalist.count; x++)
{
for(int y = x + 1; y < datalist.count; y++)
{
if (datalist[y] == datalist[x])
{
//取出你要的記錄
}
}
3、如果你datalist中的相同數據是無序(相同的ID可能不在一起)的
eg: ID
1
2
3
1
用以下方法(這里以取出沒有重復ID為例):
//[ 創建一個結果對象 ]
List<string> listResult=new List<string>();
//[ 循環datalist ]
for(int i = 0;i < datalist.Count; i++)
{
//[ 依次從datalist往listResult對象中放入不重復的值 ]
listResult.Add(datalist[i]);
//[ 從datalist中第i個值往後循環比較 ]
for(int j=i+1; j<datalist.Count)
{
//[ 判斷是否有相同的ID]
if(datalist[i] == datalist[j])
{
//[ 有相同的ID ]
//[ 從datalist列表中移除後一個ID(即datalist[j]) ]
datalist.RemoveAt(j);
}
else
{
//[ 沒有相同的ID ]
//[ 進行下一次循環 ]
j++
}
//[ 從datalist中移除已經加入到結廳灶果對帶拍象中的ID ]
datalist.RemoveAt(i);
}
}
當循環結束時,listResult列表蠢伏羨中的值即您要的結果
listResult[0]=1;
listResult[1]=2;
listResult[2]=3;
⑶ 如何批量刪除list循環出來的值
list.clear()可以一次性清空所有元素。list.retainAll(Collection c)可以移除所有不在c里的元素,list.removeAll(Collection c)可以移除所有在c里的元素。其它的情況,只好一個個刪了。
如果是資料庫的話,就必須讀出所有想刪跡稿臘除的記錄,比如你說敬帶的「有一個全選按鈕,點擊了以後都選中了,然後點擊姿滑刪除按鈕」,那麼伺服器後台收到刪除按鈕發送的那些kh.Kehuid,就將所有這些id都用「,」隔開拼接起來,比如「1,3,4,6」這樣一個字元串,然後用類似
DELETE * FROM kehu WHERE Kehuid in (......)
....那裡就是這個字元串,就可以批量刪除資料庫內數據了。但這個其實不是java的范疇而是SQL的范疇了。
⑷ jsp取list集合的時候怎樣不重復出現相同的數據
jsp取list集合的時候要保證數據唯一性,要從源頭控制,也就是控制數據來源,一般世碰是資料庫查詢,在查詢語句中排除重復友返擾好旦數據即可。
關鍵字Distinct 去除重復,如下列SQL,去除Test相同的記錄;
select distinct Test from Table
如果是要刪除表中存在的重復記錄,那就邏輯處理,如下:
select Test from Table group by Test having count(test)>1
先查詢存在重復的數據,後面根據條件刪除
⑸ java 中 。資料庫中有10萬條記錄 list中有5萬條 ,怎樣不通過for循環,找出資料庫和list中相同的數據
可不可以這樣做,在資料庫中新建一個temp表,把list中數據寫入temp中,然後對比兩張表。