Lấy dữ liệu có ngày gần đây nhất (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

trangchuvn_2000

Thành viên mới
Tham gia
5/12/12
Bài viết
2
Được thích
1
Mình muốn lấy ra một bảng lương. Vì mỗi cán bộ đều có quá trình lương nhưng mình chỉ muốn show ra lương hiện tại của cán bộ tức là dữ liệu mà có ngày nâng lương gần đây nhất
Câu lệnh của mình thế này
select MaCB,MAX(NgayKetThuc)
from QUATRINHLUONG
GROUP BY MaCB
thì nó lấy ra đúng rồi nhưng mình không chỉ lấy mã cán bộ mà còn phải lấy thêm những thông tin khác. nếu thêm các thông tin khác thì group by cũng phải thêm những thành phần tương ứng. mà nếu vậy thì câu lệnh trên show ra kết quả không đúng nữa. có ai giúp mình đưa ra giải pháp không?



à thêm nữa là mình đang dùng cơ sở dữ liệu SQl nhé
 
Chỉnh sửa lần cuối bởi điều hành viên:
à mình làm được rồi :D. chia sẽ cho ai cần
select *
from QUATRINHLUONG U1
where NgayKetThuc = (
select max(NgayKetThuc)
from QUATRINHLUONG
where MaCB = U1.MaCB)
 
Căn bản câu truy vấn nội suy (correlated subquery) là như vậy đúng rồi.
Loại truy vấn này rất thông dụng khi cần lọc bỏ bớt những dòng dữ liệu cũ, chỉ chọn những dòng mới nhất.
Nhưng xét về tốc độ thì người ta sẽ chọn cái có tốc độ nhanh hơn.
 
Không phải muốn lấy 1 record.
Người ta muốn lấy ra 1 record cho mỗi MaCB
Bảng có bao nhiêu MaCB khác nhau thì câu truy vấn này sẽ cho ra bấy nhiêu dòng.

Truy vấn nội truy (tự liên) không hẳn đã là nhanh nhất nhưng cách truy vấn theo inner join max value đưa đến câu lệnh rất dài.
 
Tôi đang đọc hiểu về SQL trên Excel. Bạn có thể gửi file đính kèm. Cảm ơn

Cứ tra từ khoá "correlated subquery" là ra. Đây là một trong những vấn đề căn bản của CSDL LH.

"SQL trên Excel": VBA chủ yếu dùng Access engine để chạy SQL trên Excel. Vậy muốn hiểu thì kiếm tài liệu về Access mà đọc. Trong đầu bài, chủ đề này có nêu rõ là dùng SQL (Server), tức là dùng T-SQL. Chả nhẽ gởi nguyên cái file db lên?

(*) Thực ra đề bài này thuộc về SQL chứ chẳng liên quan gì Excel cả. Và chủ không phải chỉ đăng ở riêng đây. Y đăng hỏi ở vài diễn đàn khác nhau. Tôi cố tình đợi xem những diễn đàn kia có người trả lời y. Chủ ý nếu 2 ngày không thấy thì tôi mới trả lời.
 
Web KT

Bài viết mới nhất

Back
Top Bottom