Lấy phần cuối của field(LastOf...)

  • Thread starter BiDIT
  • Ngày gửi
B

BiDIT

Trung cấp
16/5/09
87
1
8
Hanoi
Có anh em nào biết lỗi này thì giúp mình với nhé. Mình muốn lấy lastOfComment trong file access dưới đây nhưng nó cứ ra first thế mới đau chứ. Mình đang suy đoán có thể nguyên nhân do mình đặt quan hệ giữa 2 table chưa được hợp lý. Nhưng cũng đã thử tất ca các kiểu quan hệ rồi nhưng vẫn không được. Giúp mình với nhé!
http://www.mediafire.com/?sharekey=f037d4a5f7f942001f8e0fff488e27e0e04e75f6e8ebb871
 
Khóa học Quản trị dòng tiền
M

mvp2006

Sơ cấp
16/10/08
36
0
0
TPHCM
Mình đã test thử file của bạn, bạn thử bỏ Total (Group by) trong query thì sẽ thấy query sắp xếp thứ tự các mẫu tin ngược lại với trong table (mình cũng không hiểu tại sao?).
vậy bạn muốn lấy mẫu tin cuối trong table thì thay Last = First, bạn thử test với nhiều mẫu tin xem có đúng như vậy không?
 
B

BiDIT

Trung cấp
16/5/09
87
1
8
Hanoi
Mình đã test thử file của bạn, bạn thử bỏ Total (Group by) trong query thì sẽ thấy query sắp xếp thứ tự các mẫu tin ngược lại với trong table (mình cũng không hiểu tại sao?).
vậy bạn muốn lấy mẫu tin cuối trong table thì thay Last = First, bạn thử test với nhiều mẫu tin xem có đúng như vậy không?

Mình cũng đã thử một vài trường hợp rồi. Có những lúc nó nhảy last=first nhưng có những lúc nó lại last=second.... Mình cũng đã dùng thử cho field ID =max nhưng khi đấy nó lại show ra cả 4 records. Bạn thử đi rồi sẽ thấy. Chán thật đấy! Có bác cao thủ nào giúp em với.
 
M

mvp2006

Sơ cấp
16/10/08
36
0
0
TPHCM
Bạn thử làm như vậy xem, mình đã test rồi
Tạo 2 query, mình không up file lên được nên show câu lệnh SQL lên.

Query1: Q1 ="SELECT IB_CNHC.CN FROM IB_CNHC GROUP BY IB_CNHC.CN WITH OWNERACCESS OPTION;"

Query2: Q2="SELECT Contacted.CN, Last(Contacted.Comment) AS LastOfComment
FROM Contacted INNER JOIN Q1 ON Contacted.CN = Q1.CN
GROUP BY Contacted.CN
WITH OWNERACCESS OPTION;"
 
B

BiDIT

Trung cấp
16/5/09
87
1
8
Hanoi
Bạn thử làm như vậy xem, mình đã test rồi
Tạo 2 query, mình không up file lên được nên show câu lệnh SQL lên.

Query1: Q1 ="SELECT IB_CNHC.CN FROM IB_CNHC GROUP BY IB_CNHC.CN WITH OWNERACCESS OPTION;"

Query2: Q2="SELECT Contacted.CN, Last(Contacted.Comment) AS LastOfComment
FROM Contacted INNER JOIN Q1 ON Contacted.CN = Q1.CN
GROUP BY Contacted.CN
WITH OWNERACCESS OPTION;"

Thanks đồng chí rất nhiều. Mình làm được rồi. Nhưng cần phải đến Q3 nữa vì quan hệ giữa Q2 và Q1 là:Include All records from Q1 and only those records from Q2 Where joined fields are equal.
Cám ơn bạn đã gợi ý cho mình. Thế là vụ này thoát rồi mung quá.
 

Xem nhiều