Trong SAS, sự khác biệt giữa 'thoát' và 'chạy' là gì? các câu lệnh? Tôi không thể tìm ra khi nào nên dùng 'quit' và khi nào thì dùng 'run'? Ví dụ: tại sao là proc datasets
sử dụng quit
nhưng proc contents
sử dụng run
Các câu lệnh Quit vs Run trong SAS
Trả lời
Ngày này trở lại nơi SAS từng là một chương trình máy tính lớn (và vẫn có thể!).
RUN;
là lệnh cho SAS chạy các câu lệnh được gửi. Quay trở lại những ngày trước của khung máy tính lớn, các câu lệnh sẽ được gửi đến SAS một lần (hoặc theo lô, nhưng khái niệm cốt lõi ở đây là mỗi dòng tách biệt với quan điểm của SAS). SAS chấp nhận các tuyên bố mà không làm bất cứ điều gì cho đến khi nó chạm vào một số RUN;
hoặc một thứ khác sẽ tạo ra một ranh giới bước (một đường khác là DATA
hoặc PROC
, thường). Trong một bước dữ liệu, hoặc một proc không tương tác (proc có nghĩa là, ví dụ - một proc chỉ có thể làm một bộ hướng dẫn, và sau đó thoát), run
yêu cầu nó làm (bất kỳ) và sau đó quay trở lại một phương tiện trống.
QUIT;
được sử dụng trong môi trường lập trình tương tác. IML, SQL, nhiều quy trình hồi quy và mô hình hóa, FORMAT, TEMPLATE, DATASETS, v.v. - tất cả đều có thể được sử dụng tương tác, có nghĩa là, nhiều hơn một bộ hướng dẫn có thể được gửi đến chúng.
Trong các trường hợp tương tác này, bạn muốn SAS tiếp tục và chạy một số hướng dẫn, nhưng vẫn giữ môi trường PROC mở - câu lệnh tiếp theo của bạn sẽ nằm trong cùng một PROC, ví dụ. Một số người chạy ngay lập tức - PROC SQL
là một ví dụ tốt về điều này - trong khi một số (đặc biệt là các PROC mô hình) RUN;
làm điều gì đó (yêu cầu nó chạy mô hình cho đến nay) nhưng nó sẽ không thoát khỏi proc cho đến khi QUIT;
gặp phải. ranh giới bước yêu cầu nó thoát, tức là dữ liệu/lệnh proc). Chúng được gọi là "nhóm chạy" và "chạy xử lý nhóm" là cụm từ bạn sẽ thấy được liên kết với nhóm đó.
Bạn sẽ thấy rằng một số người đặt run; quit;
tại mọi điểm run;
hoặc quit;
có thể phù hợp; điều đó không làm hại bất cứ thứ gì, mặc dù nó cũng không thực sự là 'đúng'. Và có một số trường hợp cần phải làm điều đó!
Một ví dụ:
/* first run group*/
proc gplot data=sales;
title1 "Sales Summary";
plot sales*model_a;
run;
/* second run group */
plot sales*model_b;
run;
quit;
(từ run-group processing)
- 1. Câu hỏi về Quản lý ViewModel (DesignTime Vs Run Time)
- 2. Simple câu lệnh if vs bình thường câu lệnh if
- 3. lệnh Run PowerShell trong C#
- 4. Python câu lệnh if: False vs 0.0
- 5. Lệnh Ixutil trên SAS spds Bảng cụm
- 6. Run Bash lệnh từ PHP
- 7. Thả một loạt các biến trong SAS
- 8. cách thoát khỏi tập lệnh python trong câu lệnh if
- 9. Câu lệnh SQL Case VS Union Tất cả hiệu suất
- 10. Đếm các câu lệnh SQL trong Hibernate
- 11. nếu các câu lệnh trong các nút C#
- 12. Tắt bộ nhớ cache cho các lệnh RUN cụ thể
- 13. Câu lệnh SQL nào nhanh hơn? (CÓ vs WHERE ...)
- 14. cú pháp z trong SAS
- 15. MonoTouchDesignServerUnified quit bất ngờ
- 16. Câu lệnh ghép nhiều câu lệnh SQL
- 17. Nhận lệnh docker run cho vùng chứa
- 18. Câu lệnh và câu lệnh "là" là
- 19. cách ngăn ngừa các câu lệnh GC_CONCURRENT trong Logcat
- 20. C vs C++ định nghĩa biến câu lệnh switch vs khai
- 21. Run cURL lệnh mỗi 5 giây
- 22. AIX (vs) Các lệnh Unix
- 23. Nếu các câu lệnh trong các thử nghiệm
- 24. gọi phương thức quit() của QApplication
- 25. SAS - Cách trả về một giá trị từ một macro SAS?
- 26. Lưu trữ lệnh đầu ra `docker run` trong biến BASH
- 27. Eclipse - Lưu Folding on Quit
- 28. Regex trong câu lệnh Linq?
- 29. concat hai số trong sas proc sql
- 30. Java Câu hỏi: Có thể có câu lệnh chuyển đổi trong một câu lệnh khác không?
Cảm ơn bạn, đó là hardcore. – Victor