Một số lưu ý để cải thiện hiệu năng

Tinh chỉnh hiệu suất thực thi (Performance tuning) là một vấn đề khó và không có một quy tắc vàng nào cả. Tuy nhiên bạn có thể bước một bước dài một cách ngạc nhiên trong vấn đề này nếu theo một số nguyên tắc cơ bản trong bài này.
Về mặt lý thuyết, việc điều chỉnh hiệu năng được thực hiện bởi các DBA. Tuy nhiên họ sẽ không có đủ thời gian để rà soát lại tất cả mọi thay đổi của các procedure, do đó học một số kiến thức căn bản về điều chỉnh thực thi sẽ giúp bạn tiết kiệm thời gian cho việc phải làm việc lại với các mã nguồn.

Sau đây là danh sách 15 gợi ý cơ bản nhất mà bất kỳ một develope nào cũng cần phải thực hiện trong khóa học về điều chỉnh hiệu năng, thực hiện những điều này không đảm bảo hiệu năng sẽ được cải thiện một cách chắc chắn, nhưng ít ra nó cũng không làm cho hệ thống chậm đi.

Đọc thêm »

Xóa các dòng trùng nhau

Vấn đề:Trong rất nhiều trường hợp, chúng ta gặp một vấn đề nhỏ nhưng không nhỏ đó là các dòng trùng nhau trong một bảng. Vậy làm thế nào để xóa các dòng trùng nhau này.

Giải pháp:
Tạo bảng và insert vào bảng theo ví dụ sau:

if OBJECT_ID(‘MailList’) is not null drop table MailList
go
create table MailList
(
id int identity not null,
mail_add varchar(100) not null,
      Name Nvarchar(50) default () not null,
)
go
insert MailList (mail_add, Name)
      values
      (‘mailA@gmail.com’, ‘Nguyen van A’),
      (‘mailB@gmail.com’, ‘Nguyen van B’),
      (‘mailA@gmail.com’, ‘Nguyen Van A’)
     

   
Cột mail_add có hai mail trùng nhau đều là mailA. Để xóa bớt một dòng, dùng câu lệnh sau:

delete from MailList
      where id not in (select MAX(ID) from MailList group by mail_add)