W wersji 9 wprowadzono tablice haszujące.

W obrębie niektórych procedur oferowane są podjęzyki z własnymi typami o zasięgu ograniczonym do tych procedur, np. procedura FCMP oferuje struktury z języka C, a procedura IML arytmetykę macierzy.

Data step Data step jest blokiem instrukcji odpowiedzialnym za przetwarzanie danych krok po kroku. Najprostsza jego forma:

data tabela_wynikowa; set tabela_wejściowa; ... przetwarzanie ... run;

Gdzie "... przetwarzanie ..." oznacza dowolny ciąg instrukcji operujących na jednym wierszu z tabeli wejściowej i produkujących jeden wiersz tabeli wyjściowej.

run jest instrukcją kończącą blok data step.

Przetwarzając data step SAS utrzymuje w pamięci wektor bieżących wartości zmiennych. Instrukcje są wykonywane kolejno od początku do słowa run

Set Natrafienie w data stepie na słowo kluczowe

set tabela1 [tabela2 ...];

powoduje załadowanie do wektora zmiennych kolejnego wiersza z tabeli tabela1. Jeśli zmienna o tej samej nazwie co dana kolumna w tabeli już istnieje, jest nadpisywana. Kiedy skończy się tabela 1, ładowane są dane z tabeli 2, itd. Próba załadowania danych, kiedy skończą się wiersze we wszystkich tabelach powoduje przerwanie działania data stepu (i jest to najczęstszy sposób jego zakończenia).