Aggregation So far, all SQL expressions have referred to values in a single row. Aggregation allows us to aggregate multiple rows together. Aggregation can be used in everywhere, bu...
CS61A: Lecture 33
CS61A: Lecture 32
SELECT statements A SELECT statement specifies an input table using FROM [table] SELECT [columns] FROM [table] WHERE [condition] ORDER BY [order]; SELECT [expression] AS [name],...
CS61A: Lecture 31
Databases Database management systems (DBMS) contains tables with records, which are rows that have a value for each column. Every table has columns and rows A column has a name...
CS61A: Lecture 30
Quasiquotation We may extend Lisp as a language itself. We may change the language however we want. We may extend Scheme by adding more procedures to it, such as a for loop func...
CS61A: Programs as Data
Programs as Data Scheme programs consist of expressions that can either be primitive* or **combinations. The built-in Scheme list data structure (a linked list) is used to represent combinatio...
CS61A: Lecture 29
Programs as data A scheme expression is just a scheme list. Thus, we may use scheme to write scheme programs ourselves Built-in Scheme list data strucutre may represent combinations Ex: sc...
CS61A: Lecture 28
Interpreters The scheme interpreter represents expressions as Pairs. For the operands, we must evaluate each of the values individually. This is because we may have compound expressio...
CS61A: Interpreters
Interpreting Scheme There are two parts to an interpreter Eval: The eval evaluates primitive and combined expressions. It calls apply to apply a procedure to certain arguments in expr...
CS61A: Lecture 27
List Processing Procedures Review Built-in Methods: -(append s t): Concatenates two or more lists together into a new list -(map f s): Call a procedures f on each element of a list and retur...
CS61A: Calculator
Exceptions Exceptions allow us to raise an error for unexpected behaviors We may raise exceptions with the raise statement in Python: raise <expression> Expression must evaluate t...