Rate this post

Trong Hướng dẫn sử dụng SAS SQL này, chúng tôi sẽ chỉ cho bạn 5 cách khác nhau để thao tác và phân tích dữ liệu của bạn bằng thủ tục SAS SQL và PROC SQL SAS.

Hơn nữa, chúng ta sẽ thấy các so sánh về cách hoàn thành nhiệm vụ tương tự với mã SAS cơ sở cũng được thực hiện trong suốt bài viết với một số ví dụ về SAS SQL.

Các bài viết liên quan:

Vì vậy, hãy bắt đầu với SAS SQL.

SAS SQL – PROC SQL SAS

Thủ tục PROC SQL được sử dụng để xử lý các câu lệnh SQL. Thủ tục này không chỉ có thể trả về kết quả của một truy vấn SQL mà còn có thể tạo các bảng và biến SAS .

Cú pháp của PROC SQL SAS-

  • PROC SQL:  gọi thủ tục SAS SQL
  • SELECT:  chỉ định (các) cột (biến) được chọn
  • FROM:  chỉ định (các) bảng (tập dữ liệu) được truy vấn
  • WHERE:  tập hợp con dữ liệu dựa trên một điều kiện
  • GROUP BY:  phân loại dữ liệu thành các nhóm dựa trên (các) cột được chỉ định
  • ORDER BY:  sắp xếp các hàng kết quả (quan sát) theo (các) cột được chỉ định
  • QUIT:  kết thúc quy trình PROC SQL

SQL so với SAS

CHUYÊN ĐỀ SQL PROC

Các câu lệnh được sử dụng trong SAS SQL để tạo, cập nhật và xem tập dữ liệu khác với các câu lệnh. Dưới đây là một bản tóm tắt về sự khác biệt. Chúng ta sẽ xem xét những điểm quan trọng từ bảng này.

Xem thêm Tìm hiểu về lập trình SAS

Tập dữ liệu hiển thị

Cách sử dụng cơ bản nhất của PROC SQL là hiển thị (hoặc in) tất cả các biến (cột) và quan sát (hàng) từ một tập dữ liệu nhất định trong cửa sổ Kết quả SAS.

Sử dụng tập dữ liệu SASHELP.CLASS với mã Base SAS, bạn có thể xem tại đây cách in toàn bộ tập dữ liệu ra cửa sổ kết quả bằng quy trình PRINT:

proc print data=sashelp.class;
run;

kết quả có thể thu được bằng cách sử dụng câu lệnh SELECT. Để hiển thị tất cả các cột trong cửa sổ Kết quả, dấu hoa thị (*) được sử dụng sau một CHỌN để chỉ ra rằng bạn muốn giữ tất cả các biến (cột) trong đầu ra.

Một lệnh gọi tới PROC SQL SAS được kết thúc bằng dấu chấm phẩy, theo sau là câu lệnh QUIT và một dấu chấm phẩy khác như được hiển thị ở đây:

proc sql;
 select * from sashelp.class
 ;
quit;

Hiển thị Tập dữ liệu trong PROC SQL SAS

Đối với các tập dữ liệu có nhiều biến, có thể tốt hơn là chỉ xem một tập con của các biến đó. Với Proc Print, điều này sẽ được thực hiện với câu lệnh VAR. Ở đây, câu lệnh VAR chỉ được sử dụng để in các  biến Tên  và  Tuổi  từ SASHELP.CLASS:

proc print data=sashelp.class;
 var name age;
run;
proc sql;
 select name,age from sashelp.class;
quit;

Hiển thị Tập dữ liệu trong PROC SQL SAS

Xem thêm SAS là gì? tìm hiểu về SAS

Tạo tập dữ liệu từ dữ liệu hiện có

Tương tự như Bước dữ liệu trong lập trình SAS cơ sở , PROC SQL cũng có thể được sử dụng để tạo bộ dữ liệu mới từ dữ liệu hiện có.

Để tạo tập dữ liệu mới trong thư viện WORK được gọi là class_new, chứa tất cả các biến và quan sát từ SASHELP.CLASS, bước dữ liệu SAS cơ sở được sử dụng cùng với câu lệnh SET như sau:

Data class_new;
 Set sashelp.class;
Run;

Tập dữ liệu đầu ra tương đương được tạo bằng cách sử dụng câu lệnh CREATE TABLE và AS trước câu lệnh SELECT: 

proc sql;
 create table class_new as
  select * from sashelp.class
  ;
quit;

Tạo tập dữ liệu từ dữ liệu hiện có

Mệnh đề WHERE

SAS sử dụng mệnh đề where để tập hợp con dữ liệu, nghĩa là chỉ lấy các giá trị mà chúng ta muốn và loại bỏ phần còn lại của các giá trị. Ví dụ, nếu chúng ta muốn chỉ những người có giới tính là nam, thì chúng ta sẽ chỉ định nó trong mệnh đề where.

Chúng tôi đã tạo một tập dữ liệu có tên CLASSFIT_MALES chứa tất cả các biến từ CLASSFIT nhưng chỉ những bản ghi có Giới tính là ‘M’ (tức là chỉ những bản ghi dành cho nam giới):

data classfit_males;
 set sashelp.classfit;
  where sex = 'M';
run; 
proc sql;
  select * from classfit_males where sex='M'
  ;
quit;  

Mệnh đề WHERE – SAS SQL

Cập nhật tập dữ liệu

Sử dụng tập dữ liệu CLASS làm ví dụ, giả sử rằng bạn muốn biết chiều cao của mỗi người là bao nhiêu theo cả inch và cm.

Sử dụng một câu lệnh select duy nhất, biến tên được giữ lại, biến chiều cao hiện tại có thể được đổi tên thành height_inches và một biến chiều cao mới có tên là height_cm có thể được tạo bằng cách nhân chiều cao tính bằng inch với 2,54 để chuyển đổi thành cm.

proc sql;
 create table class_heights as
 select name, height as height_inches, (height*2.54) as height_cm from sashelp.class;
quit;

Xóa hàng khỏi tập dữ liệu

Cũng giống như chúng ta đã thấy một số câu lệnh ở trên, câu lệnh xóa bên trong PROC SQL SAS sẽ xóa các hàng mà chúng ta chọn.

proc sql;
   delete
      from sashelp.cars
      where salary>200
;
quit;

Tất cả đều có trên SAS SQL Tutorial. Hy vọng bạn thích giải thích của chúng tôi.

Kết luận

Do đó, hôm nay chúng ta đã xem SAS SQL là gì và cách sử dụng câu lệnh PROC SQL thay vì câu lệnh SAS để áp dụng các hoạt động trên tập dữ liệu của chúng tôi. Không có nhiều sự khác biệt giữa các câu lệnh.

Xem thêm Tìm hiểu về biến trong SAS

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now