Instructor: Craig Duckett Lecture 02: Thursday, April 9, 2015 SQL Basics and SELECT, FROM, WHERE 1.

Slides:



Advertisements
Similar presentations
Let’s try Oracle. Accessing Oracle The Oracle system, like the SQL Server system, is client / server. For SQL Server, –the client is the Query Analyser.
Advertisements

Instructor: Craig Duckett CASE, ORDER BY, GROUP BY, HAVING, Subqueries
CS 330 Programming Languages 09 / 13 / 2007 Instructor: Michael Eckmann.
Introduction to Structured Query Language (SQL)
Modules, Hierarchy Charts, and Documentation
30-Jun-15 SQL A Brief Introduction. SQL SQL is Structured Query Language Some people pronounce SQL as “sequel” Other people insist that only “ess-cue-ell”
Introduction to Structured Query Language (SQL)
Introduction to C Programming
Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment.
CORE 2: Information systems and Databases STORAGE & RETRIEVAL 2 : SEARCHING, SELECTING & SORTING.
Database Systems Lecture 5 Natasha Alechina
Introduction To Databases IDIA 618 Fall 2014 Bridget M. Blodgett.
DAY 21: MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Akhila Kondai October 30, 2013.
CSSE 533 – Database Systems Week 1, Day 1 Steve Chenoweth CSSE Dept.
Pemrograman Berbasis WEB XML part 2 -Aurelio Rahmadian- Sumber: w3cschools.com.
A Guide to SQL, Eighth Edition Chapter Three Creating Tables.
2010/11 : [1]Building Web Applications using MySQL and PHP (W1)PHP Recap.
Chapter 2 Basic SQL SELECT Statements
Chapter 5 Introduction to SQL. Structured Query Language = the “programming language” for relational databases SQL is a nonprocedural language = the user.
ASP.NET Programming with C# and SQL Server First Edition
Chapter 2 Basic SQL SELECT Statements Oracle 10g: SQL.
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 7 INTRODUCTION TO STRUCTURED QUERY LANGUAGE (SQL) Instructor Ms. Arwa.
Created by, Author Name, School Name—State FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities.
An introduction to SQL 1/21/2014 – See chapter 2.3 and 6.1 PostgreSQL -
CS 330 Programming Languages 11 / 21 / 2006 Instructor: Michael Eckmann.
Lexical Analysis Hira Waseem Lecture
CPS120: Introduction to Computer Science Lecture 19 Introduction to SQL.
Open Source Server Side Scripting ECA 236 Open Source Server Side Scripting MySQL – Selecting Data.
Structure Query Language SQL. Database Terminology Employee ID 3 3 Last name Small First name Tony 5 5 Smith James
Instructor: Craig Duckett Lecture 02: Thursday, October 1 st, 2015 SQL Basics and SELECT, FROM, WHERE 1 BIT275: Database Design (Fall 2015)
7 1 Chapter 7 Introduction to Structured Query Language (SQL) Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Copyright © 2012 Pearson Education, Inc. Chapter 2: Introduction to C++
M1G Introduction to Database Development 5. Doing more with queries.
6 1 Lecture 8: Introduction to Structured Query Language (SQL) J. S. Chou, P.E., Ph.D.
What is PHP? PHP stands for PHP: Hypertext Preprocessor PHP is a server-side scripting language, like ASP PHP scripts are executed on the server PHP supports.
Chapter 15 Introduction to PL/SQL. Chapter Objectives  Explain the benefits of using PL/SQL blocks versus several SQL statements  Identify the sections.
Instructor: Craig Duckett Lecture 08: Thursday, October 22 nd, 2015 Patterns, Order of Evaluation, Concatenation, Substrings, Trim, Position 1 BIT275:
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Database Fundamental & Design by A.Surasit Samaisut Copyrights : All Rights Reserved.
Instructor: Craig Duckett Lecture 03: Tuesday, April 14, 2015 SQL Sorting, Aggregates and Joining Tables 1.
Database Basics BCIS 3680 Enterprise Programming.
DAY 21: MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Aliya Farheen October 29,2015.
U:/msu/course/cse/103 Day 21, Slide 1 CSE 103 Makeups –If you didn’t take one over the weekend, take one TUESDAY or WEDNESDAY!
Programming Fundamentals. Overview of Previous Lecture Phases of C++ Environment Program statement Vs Preprocessor directive Whitespaces Comments.
IS6146 Databases for Management Information Systems Lecture 1: Introduction to IS6146 Rob Gleasure robgleasure.com.
Restrictions Objectives of the Lecture : To consider the algebraic Restrict operator; To consider the Restrict operator and its comparators in SQL.
Database: SQL, MySQL, LINQ and Java DB © by Pearson Education, Inc. All Rights Reserved.
Distribution of Marks For Second Semester Internal Sessional Evaluation External Evaluation Assignment /Project QuizzesClass Attendance Mid-Term Test Total.
Instructor: Craig Duckett Lecture 07: Tuesday, October 20 th, 2015 Conflicts and Isolation, MySQL Workbench 1 BIT275: Database Design (Fall 2015)
CSE1222: Lecture 1The Ohio State University1. Computing Basics  Computers CPU, Memory & Input/Output (IO)  Program Sequence of instructions for the.
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 5: SQL I Rob Gleasure robgleasure.com.
LM 5 Introduction to SQL MISM 4135 Instructor: Dr. Lei Li.
MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Sravanthi Lakkimsety Mar 14,2016.
1 Agenda  Unit 7: Introduction to Programming Using JavaScript T. Jumana Abu Shmais – AOU - Riyadh.
Oracle 10g Retrieving Data Using the SQL SELECT Statement.
1 Section 1 - Introduction to SQL u SQL is an abbreviation for Structured Query Language. u It is generally pronounced “Sequel” u SQL is a unified language.
Instructor: Craig Duckett Lecture 06: Thursday, October 15 th, 2015 Indexes, Aliases, Distinct, SQL 1 BIT275: Database Design (Fall 2015)
Instructor: Craig Duckett Lecture 02: Thursday, March 30th, 2017
Retrieving Data Using the SQL SELECT Statement
Chapter 5 Introduction to SQL.
User-Written Functions
Basic select statement
Instructor: Craig Duckett Lecture 09: Tuesday, April 25th, 2017
ATS Application Programming: Java Programming
Instructor: Craig Duckett Lecture 06: Thursday, April 13, 2016
ICS103 Programming in C Lecture 3: Introduction to C (2)
JDBC.
Types of SQL Commands Farrokh Alemi, PhD
Instructor: Craig Duckett
Presentation transcript:

Instructor: Craig Duckett Lecture 02: Thursday, April 9, 2015 SQL Basics and SELECT, FROM, WHERE 1

2 Assignment 1 is due LECTURE 4, Thursday, April 16 th, in StudentTracker by MIDNIGHT MID-TERM EXAM is LECTURE 10, Tuesday, May 12 th Assignment 2 is due LECTURE 11, Thursday, May 14 th, in StudentTracker by MIDNIGHT

3 Tuesday (LECTURE 1) Database Design for Mere Mortals: Chapter 1 Thursday (LECTURE 2) The Language of SQL: Chapter 1: Relational Databases and SQL Chapter 2: Basic Data Retrieval

4 SQL Basics SQL Syntax SQL Keywords The SELECT Statement The FROM Clause The WHERE Clause BIT276: ICE 02

5 SQL Basics

SQL, or Structured Query Language, is the common language that lies at the heart of every Relational Database Management System* (the application that actually gets the SQL to run and do something) that you'll likely to use. Now, you've probably noticed the different pronunciation already. Some people say S-Q-L, some people say sequel. I tend to say S-Q-L in general and when talking about MySQL (the MySQL official documentation says that’s how it should be pronounced), but I will say Microsoft Sequel Server (because that’s how they pronounce it on-campus AT Microsoft) although will sometimes revert to S-Q-L Server if I’ve been talking about SQL in general just before hand. In short, both ways are correct, but I would defer to what and how they are calling it where you work Now SQL, the language, has been around since the 1970s, and that's one of the few languages I was writing 20 years ago that I'm still writing now. A lot of other programming languages have come and gone, become fashionable and unfashionable, but SQL has stuck around, and I expect it to stay for a long time to come. But SQL is a very small, very focused language, and the key to first learning it is to understand that it's a little different from other programming languages you might have come across, like C, C++, Java, or C#. SQL is what's considered a declarative query language, as opposed to procedural or imperative languages. What it means is you use SQL to describe what you want, and you let the Database Management System handle how that's actually done. You don't have to manually lay out the algorithm, the different steps of the procedure as you would do in other programming languages.

*How Does SQL Run? A.java files is simply a text file that needs a compiler like jGrasp to run. An.html or.css or.js file are also all text files that need a browser application to run. A C or C++ or C# file are simply text files as well that also need a compiler to run. Like them, a.sql file is also a text file that needs a Database Management System (DBMS)* to run, although you can also enter your SQL queries directly into the DBMS without the need of a separate.sql file (as we shall see throughout the quarter, and starting with today’s ICE). Different Types of Database Management Systems Access FileMaker Pro DB2 Sybase MySQL MariaDB SQL Server Oracle dBase InGres PostgreSQL Rocket U2 See:

SQL Basics: How Does It Work? If I have a Books table with, perhaps, thousand different books in it, and I want to know which books have a list price of more than $40. Well, in a procedural or imperative language like C or Java, I'll have to write the steps to do this…

SQL Basics I would probably write some (pseudo) code that would start at the first book and then would loop through all of them one by one. And every time going through this loop you're asking the question, "Is this more than $40? If so, do one thing. If not, do something else." Even writing this in pseudo code, I'd be writing a loop. I'd be writing conditions. I'd be writing returns.

SQL Basics With SQL, you don't describe all the steps, you just describe the outcome. You describe what you want the same way you might do in English, where you just say: or this written in SQL: That's it. Select or go get everything from the Books table where the price is more than $40. The Database Management System will take this, it will look at all your data, figure it out, and return the result set, whether that would be one book, 500 books, or even none, based on your query.

SQL Basics So SQL can be used to select, to retrieve, or read data, and to ask questions of it. Books Table

SQL Basics In fact, all of these things are referred to with the wonderful acronym of CRUD : Create, Read, Update, Delete. An SQL can be used to create not just your data, but to define the databases themselves. FYI: I will be discussing Data Manipulation Language (DML) and Data Definition Language (DDL) in Lecture 5

13 SQL Syntax

SQL Syntax 1.Comment A comment is optional text that explains you program. Comments usually describe what a program does or why code was changed. Compilers are for humans—the compiler ignores them. A comment is introduced by two consecutive hypens and continues until the end of the line. -- This is a comment Some DBMS (like Microsoft SQL Server) support the /*... */ (forward slash-asterisk character pairs) multiline comments (those who've taken Java or C# should recognize these). 2.SQL Statement An SQL statement is a valid combination of tokens introduced by a keyword. Tokens are the basic indivisible parts of the SQL language; they can’t be reduced grammatically. Tokens include keywords, identifiers, operators, constants, and punctuation symbols. 3.Clauses An SQL statement has one or more clauses. In general, a clause is a fragment of an SQL statement introduced by a keyword, is required or optional, and must be given in a particular order. SELECT, FROM, WHERE, and ORDER BY are examples of clauses. 4.Keywords Keywords are words that SQL reserves because they have special meaning in the language. Using a keyword outside its specific context (as an identifier, for example)) causes an error. DBMSs use a mix of standard and nonstandard (proprietary) keywords. Search your DBMS documentation for keywords or reserved words. 5.Identifiers Identifiers are words that you (or the database designer) use to name database objects such as tables, columns, aliases, indexes, and views. 6.Terminating Semicolon AN SQL statement ends with a semicolon.

15 Authors Table

SQL Syntax SQL is a "freeform" language whose statements can: Be in uppercase or lowercase (SELECT, select, or SeLECt are considered to be identical keywords) Continue on the next line as long as you don't split words, tokens, or quoted strings in two. Be on the same line as other statements Start in any column Despite its flexibility, you should adopt a consistent style. I prefer to use uppercase keywords (e.g., SELECT) and an uppercase/lowercase mix for identifiers using Pascal case (e.g., FirstName). Although I don't do it myself, some SQL coders also like to indent each clause on its own line:

SQL Syntax Common Errors Omitting the terminating semicolon when using multiple statements (or Transact-SQL) Misspelling a keyword or identifier Mismatched or unmatched parentheses or quotes (e.g., double quotes instead of single quotes) Listing clauses out of order Not surrounding a string or datetime literal with single quotes Surrounding a numeric constant (literal) or the keyword NULL with quotes Mismatching a table and column name Creating a table with a bad name

18 SQL Keywords

Structured Query Language is the shared vocabulary of relational databases. That's not for general purpose programming. It's a small language focused purely on working with databases and the first handful of keywords that you'll learn (maybe a dozen) will take care of 90% of everything you'd ever do in SQL.

21 The SELECT Statement See:

The SELECT Statement In terms of frequency, there's one that's head and shoulders above all the others. By far the most common word you'll ever write in SQL is SELECT. This is the word we start with when we want to SELECT or read information from one of the tables in one of our databases. We're using it to ask the database a question, and we expect a reply. Actually, the better word is not question but query. A query as in the Q in SQL: Structured Query Language. if I want to SELECT some data out of my database, I'm going to have multiple tables and multiple columns in each table. So, I need to say what specific part of this database am I interested in selecting. The general format of a SELECT statement is the word SELECT, what columns you're interested in, then the word FROM what table? SELECT and FROM are your SQL keywords. They're part of the SQL language itself. Now, the columns and table names are up to you. It's whatever you named your columns and your tables in your database. See:

23 The FROM Clause

SELECT Statement, FROM Clause

28 The WHERE Clause

See:

The WHERE Clause See:

Uppercase, Lowercase, Semicolon?

Database Name with Dot Notation Dot notation allows you to prefix a table name to a column name to avoid ambiguity and to query multiple tables.

More About the WHERE Clause

Single ‘=‘ sign ‘<>’ NOT equal

More About the WHERE Clause AND OR See:

More About the WHERE Clause IN (note the single quotes, and comma) See:

More About the WHERE Clause ‘%’ wildcard See: A substitute for 0 or more characters

More About the WHERE Clause ‘_’ wildcard See: A substitute for a single character

More About the WHERE Clause IS NULL See:

More About the WHERE Clause IS NOT NULL See:

42 BIT 275 ICE 02

BIT275: In-Class Exercises (ICE) Using what you've learned today about SQL, use the remainder of the class time to write SQL queries as part of the BIT275 ICE 02 exercise. Feel free to utilize whatever you might find useful in building these queries (a book, the PowerPoint slides, Google, etc). SQL Query Exercise (solo, no partner )