distinct用法(VB與ACCess)去除重複項

時間 2025-01-11 11:45:18

1樓:荀德度霜

先找出姓名,再找出**,分2句sql語句就行了。

distinct是不能同時修飾2個屬性的,「selectdistinct

姓名,**」這樣是錯誤的,象下面的資料:張三。

張三。李四。

如果你用"select

distinct

姓名,**"的話,那麼是去掉第二條還是第三條資料呢?所以電腦是無法處理的,所以distinct只能修飾乙個屬性。

2樓:權仁輝汝

不清楚你的表的內容是什麼樣的,「selectdistinct

姓名,**。

fromclien

這句的錯誤原因可能是在你過濾重複的時候它是把姓名和**這兩項當成一項來處理的,是否可乙個把姓名加上括號:select

distinct(姓名),**。

fromclien

3樓:摩廣英懷妍

distinct語句只能修飾乙個屬性。

分成兩次查詢即可~~

雖然有點耗費資源。

但是不會出錯啊~

4樓:網友

我想應該用這個語句。

select distinct 姓名 from clien得到不重複的姓名。

然後利用迴圈填充combobox2

for i = 1 to

next

access,不用distinct 去除重複資料的方法

5樓:匿名使用者

select 學生名,學生介紹。

from 表1

group by 學生名,學生介紹。

access中distinct的用法問題

6樓:網友

sql語句裡使用distinct謂詞,指對有重複的記錄行只取唯一的一條記錄(它針對的是所有的輸出欄位且這些欄位值的組合必須是唯一),該謂詞必須放在輸出欄位列表的前面,而不得單獨應用到某個欄位裡,否則必然報錯。

請記住distinct是謂詞,它不是內建函式、不得當做函式使用!

貼出的語句可修改如下。

select distinct count(callforward.欄位1) as 欄位1之計數, callforward.欄位2

from callforward

group by callforward.欄位2;

修改後的語句語法上沒問題,但是能否返回您要求的結果,這裡不好判斷,請自行分析。

access裡的 select distinct (不出現重複問題)

7樓:網友

加個主鍵欄位:欄位4

alter table ff add 欄位4 int identity constraint pk primary key

select * from ff

where 欄位4 in

select min(欄位4) from ff group by 欄位1)

不過得出的結果是。

欄位1-欄位2-欄位3-欄位4

1---wer---1

2---qwe---2

不知道你要的。

欄位1 欄位2 欄位3

1 * wer

2 @ qwe

是怎麼來的,老實說看不出什麼特徵。

select * into #f from ff

alter table #f add 欄位4 int identity constraint pk primary key

select * from #f

where 欄位4 in

select min(欄位4) from #f group by 欄位1)

8樓:網友

不可能,因為規則不確定。

為什麼從。2---qwe

2---qwe

中取2---qwe

而從3---123

3---abc

中取3---123

access 查詢 去除重複

9樓:網友

人家沒讓你刪除你刪什麼,從網上copy來就算了?

試試這個,我身邊沒access

select * from table

where a in (select max(a) from table group by b,c)

access裡distinct語句和sql裡面distinct語句用法不一樣嗎?!(本人沒積分了,只希望哪個路過的高手看哈)

10樓:

distinct *表示你查詢的所有欄位的過濾重複比如你有兩行資料。

1 白菜類 白菜1

2 白菜類 白菜2

這兩行資料,肯定是不相同的,所以select distinct *,一定會把兩行資料都查出來。

只是你顯示的時候,只顯示了類別這一項,所以把不重複的資料給掩蓋了而已。

按照你這個顯示,你應該select distinct 欄位 from table這樣來做。

用vb**刪除access重複記錄?

11樓:網友

access 可以設定乙個主鍵啊,主鍵是不能重複的,或者你把不能重複的欄位設定乙個無重複的索引。具體我也不太記得了,很久沒用了。上網搜尋下,應該很多資料。

至於設定好索引後如何判斷重複,我想是不是通過捕捉錯誤來處理的。。。

如何用vb刪除access中的重複的記錄?

12樓:網友

sql = create table tmpjshwu select * from excelxj where 1<>1;"

建立乙個臨時表tmpjshwu並使其欄位與原表欄位相同。

sql = insert into tmpjshwu select distinct * from excelxj "

從表中查詢出無重複的記錄並寫入到臨時表tmpjhwu中。

sql = delete from excelxj "

清空原表中記錄。

sql = insert into excelxj select * from tmpjshwu "

將臨時表中記錄拷貝到原表中。

sql = drop table tmpjshwu "

刪除臨時表。

你只需連續執行以上sql語句即可。

再說明一下,連續執行sql語句可用adocon物件。

如:dim con as new

你的連線資料庫字串,我喜歡用odbc,看你個人"

即可,有疑問提出來我再幫你看看。

我在sql server 與mysql下都執行過,不知你是使用的資料庫是什麼?

13樓:vb天使也掉毛

你可以儲存是不讓他有得復的啊。

比如,姓名。身份證號。或者期他的。有乙個不能得復的儲存時就能判斷出來的。

14樓:網友

如果在乙個表裡已經有同樣的兩條資料的話,你只能麻煩一點,每取出一條資料去與其他資料相比,有相同的刪除,沒有相同的則取第二條,以此類推。

vb access操作,新增記錄重複檢測

15樓:網友

不用這麼複雜。直接的修改sql語句應該就可以了,然後判斷它的返回記錄數。

strsql = "select * from 表1 where x-part='" & "'"

將sql語句修改這個,然後判斷它記錄數是否大於1俺看你的似乎還有第二個條件,這樣就可以 and 欄位名 =『跟上面的一樣的。加上去再執行sql語句。大於1的記錄數有重複數,等於1是沒有重複,小於0是沒有記錄。

VB語言中隨機函式,VB中隨機函式的用法

rnd,產生隨機函式,所得值在0 1之間 所以要產生0 100的隨機數,那麼就用100 rnd 1 就可以產生0 100的隨機數 如果要取正的話 就用int rnd 100 1 還有一點要強調 如果每次都要使隨機數不一樣,那麼還要在產生隨機數之前加上randomize 這個表示產生的隨機數不一樣例子...

介紹一下VB裡line input的用法

line input 從已開啟的順序檔案中讀出一行並將它分配給string變數。語法 line input filenumber,varname filenumber 必要。任何有效的檔案號 varname 必要。有效的variant 變體資料 值或string 字串 變數名 示例 dim text...

VB中Val函式的具體作用和用法

val 函式,在它不能識別為數字的第一個字元上,停止讀入字串。那些被認為是數值的一部分的符號和字元,例如美圓號與逗號,都不能被識別。但是函式可以識別進位制符號 o 八進位制 和 h 十六進位制 空白 製表符和換行符都從引數中被去掉。下面的返回值為 1615198 val 1615 198th str...