xin giúp code lấy ngày lớn nhất và số lớn nhất trong Access

Liên hệ QC

cartoon18

Thành viên chính thức
Tham gia
11/1/12
Bài viết
56
Được thích
2
-Em có 1 file excel và 1 file dữ liệu access , trong file access em muốn lấy tất cả số liệu của record chứa ngày gần nhất (ở Field1) và số lớn nhất (ở FIeld3) nhưng không thể lấy được, mong các bác giúp code với ah.
 

File đính kèm

  • Documents.rar
    436.9 KB · Đọc: 9
-Em có 1 file excel và 1 file dữ liệu access , trong file access em muốn lấy tất cả số liệu của record chứa ngày gần nhất (ở Field1) và số lớn nhất (ở FIeld3) nhưng không thể lấy được, mong các bác giúp code với ah.
Bạn hỏi cả cách kết nối hay là chỉ câu lệnh Sql.
 
Query con 1: Select Max(Field1) From Bảng
Query con 2: Select Max(Field2) From Bảng Where Field1 In (Query con 1)
Query mẹ: Seleect * From Bảng Where Field2 In (Query con 2) And Field1 In (Query con 1)

Hoặc là:
Query con 1: Select Max(Field1) From Bảng
Query con 2: Select Max(Field2) & "|" & Field1 From Bảng Where Field1 In (Query con 1)
Query mẹ: Seleect * From Bảng Where Field2 & "|" & Field1 In (Query con 2)
 
Query con 1: Select Max(Field1) From Bảng
Query con 2: Select Max(Field2) From Bảng Where Field1 In (Query con 1)
Query mẹ: Seleect * From Bảng Where Field2 In (Query con 2) And Field1 In (Query con 1)
Tôi viết gộp thế này:
Mã:
SELECT * from sheet1 c where c.Field2 In ( select max(b.Field2) from Sheet1 b where Field1 in(select max(a.Field1) as MaxDate from sheet1 a));
 
Tôi viết gộp thế này:
Mã:
SELECT * from sheet1 c where c.Field2 In ( select max(b.Field2) from Sheet1 b where Field1 in(select max(a.Field1) as MaxDate from sheet1 a));
Bạn thiếu điều kiện And để bảo đảm Max Date

1664726569604.png

Câu query con 1 của bạn cho ra 3/10/2022 (max date)
Câu query con 2 cho ra 5 (max of 5, 3; hai cái records có date = 3/10/2022)
Câu mẹ cho ra 2 records. Dòng 2 đúng nhưng dòng 6 sai.
 
Bạn thiếu điều kiện And để bảo đảm Max Date

Câu mẹ cho ra 2 records. Dòng 2 đúng nhưng dòng 6 sai.
Dữ liệu trong file Excel bài 1 thì Field2 là Ngày giờ phút giây, nên tôi ỷ lại sẽ ít trùng. Viết lại:
Mã:
SELECT *
FROM sheet1 AS c
WHERE c.Field2 In ( select max(b.Field2) from Sheet1 b where b.Field1 in(select max(a.Field1) as MaxDate from sheet1 a)) 
and c.Field1  in(select max(a.Field1) as MaxDate from sheet1 a);
 
xin cám ơn sự giúp đỡ của mọi người
 
Web KT
Back
Top Bottom