کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی
کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی

Bla Bla حذف تکرار یا استخراج فیلد بدون تکرار


Tbl

A

test1

test1

test2

test3

test2

test1

test4

test3

test1


راه اول : تعریف Primary Key برای فیلد A در نمای دیزاین ، اگر فایل به accde ( اجرایی) تبدیل شود قادر به تغییرات در نمای دیزاین اشیاء نخواهید بود.

راه دوم : ساخت کوئری و استفاده از عبارت Group by  یا Distinct و اجرای کوئری Make Table برای اکسپورت به جدول New

راه سوم : ایجاد رکوردست ، لوپ در فیلد مورد نظر و کپی رکورد [بدون تکرار] در جدول دیگر.




البته کد زیر خالی از اشکال نیست پس سعی کنید اشکالات را برطرف کنید



RsSource : Tbl

RsTarget : tTbl


RsSource=db.OpenRecordSet("Tbl",dbOpenSnapShot")

RsTarget=db.OpenRecordSet("tTbl")

RsSource.MoveFirst

Do

RsTarget.MoveFirst

Do

if  (RsSource!A=RsTarget!A) Then

NewValue=RsSource!A

End If

RsTarget.AddNew

RsTarget!A=NewValue

RsTarget.Updats

RsTarget.MoveNext

Unlti RsTarget.EOF=-1

RsSource.MoveNext

Until RsSource.EOF=-1




OrderIDProductPrice
10280AAA280
10280AAA280
10280AAC267
10285CCC350
10285CCC350
10285CCC350
10285CCA348

Select distict * from t

OrderIDProductPrice
10280AAA280
10280AAC267
10285CCC350
10285CCA348




IDLast NameNational Code
1Akbari0012020400
2Akbari0012020400
3Akbari0012021400
4Asghari0011021400
5Asghari0012021400
6Asghari0012021400
7Rajabi0032029400
8Rajabi0032029400
9Rajabi0032029400
10Rajabi0032129400


Select distinct [Last Name],[National Code] from t1

Or

Select [Last Name],[National Code] from t1 Group By [Last Name],[National Code]


Last NameNational Code
Akbari0012020400
Akbari0012021400
Asghari0011021400
Asghari0012021400
Rajabi0032029400
Rajabi0032129400


در جدول ماقبل بالا چون دو رکورد در فیلد اول و دوم وجود دارد ( Zero Base ) نمی توانید ID را به جدول قبل اضافه کنید مگر با نوشتن سلکت کوئری درون آن





create table CC (ID int not null,Code int not null)


Insert into CC Values(1,123)

IDCode
1123
2123
3123
4121
5122
6122
7123
8124
9124
10123
11125
12123



Delete From CC Where ID Not In(Select ID From (SELECT distinct Code,(Select ID from CC C where C.id<=CC.ID And C.Code=CC.Code) ID FROM CC order by code Asc))



IDCode
1123
4121
5122
8124
11125



برای انتخاب مقادیر یکتا در یک فیلد می تواند استفاده شود و مستقیم در نمای SQL فقط بکار برده می شود.


SELECT DISTINCT can be used in Microsoft Access SQL to select unique values in a field. Note that you cannot use this keyword in Query Design View, you can only use it directly in SQL View.

The outcome of DISTINCT is exactly the same as GROUP BY if you only try to find the unique values, but GROUP BY can be used together with other Aggregate Functions such as COUNT, SUM, AVERAGE. In terms of performance, they should be the same or nearly the same.



IDCode
1123
2123
3121
4122
5123
6121
7120
8124
9123
10124
11121
12122
13125
14122
15126
16125
17126
18127
19125
20128

-Delete Query ( SQL View )

IDCode
1123
3121
4122
7120
8124
13125
15126
18127
20128

-Nested Select ( Count(ID) And Where Clause )

RowNunIDCode
11123
23121
34122
47120
58124
613125
715126
818127
920128


















































نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد