215
Chapter 8  •  Microsoft Jet SQL
Figure 8.2
Viewing the
Northwind
Current
Product List
query in Design
mode.
Figure 8.3
Viewing the
Northwind
Current
Product List
query in SQL
View.
In the Real World
Pronounced sequel, SQL was originally developed by IBM researchers in the 1970s. It has become
the de facto database manipulation language for many database vendors. For database users,
mastering SQL has become a sought-after skill set in the information technology world. Most
persons who master the SQL language have no trouble finding well-paid positions.
Copy text from pdf - extract text content from PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Feel Free to Extract Text from PDF Page, Page Region or the Whole PDF File
copy text from pdf to word; copy and paste text from pdf to excel
Copy text from pdf - VB.NET PDF Text Extract Library: extract text content from PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
How to Extract Text from PDF with VB.NET Sample Codes in .NET Application
copy pdf text to word with formatting; how to copy and paste pdf text
216
To provide readability in the sections to come, I use a preferred syntax nomenclature for SQL:
• All SQL commands and reserved language keywords are in uppercase. For example,
SELECT
FROM
WHERE
, and 
AND
are all Jet SQL commands and reserved keywords.
• Even though Microsoft Access is not a case-sensitive application, table and column
names used in SQL statements use the same case as defined in the database. For
example, a column defined as 
EmployeeId
is spelled 
EmployeeId
in the SQL query.
• Table and column names that contain spaces must be enclosed in brackets. For 
example, the column name 
Customer Number
must be contained in SQL as 
[Customer
Number]
. Failure to do so causes errors or undesired results when executing your
queries.
• A query can be written on a single line. For readability, I break SQL statements into
logical blocks on multiple lines. For example, look at this SQL statement:
SELECT [Order Details].OrderID, Sum(CCur([UnitPrice]*[Quantity]*(1–[Discount])/
100)*100) AS Subtotal FROM [Order Details] GROUP BY [Order Details].OrderID;
It should look like this:
SELECT     [Order Details].OrderID, 
SUM        (CCur([UnitPrice]*[Quantity]*(1–[Discount])/100)*100) 
AS         Subtotal 
FROM       [Order Details] 
GROUP BY   [Order Details].OrderID;
Data Manipulation Language
SQL contains many natural-language commands for querying, computing, sorting, group-
ing, joining, inserting, updating, and deleting data in a relational database. These querying
and  manipulation  commands  fall  under  the  Data  Manipulation  Language  subset  also
known as DML. 
Simple SELECT Statements
To  retrieve  information from a  relational database,  SQL provides the simple 
SELECT
state-
ment. A simple 
SELECT
statement takes the following form.
SELECT   ColumnName, ColumnName
FROM     TableName;
Access VBA Programming for the Absolute Beginner, Second Edition
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
C#.NET PDF Library - Copy and Paste PDF Pages in C#.NET. Easy Ability to copy selected PDF pages and paste into another PDF file. The
delete text from pdf with acrobat; copy paste pdf text
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
Extract, Copy, Paste PDF Pages. |. Home ›› XDoc.PDF ›› VB.NET PDF: Copy and Paste PDF Page. Ability to copy PDF pages and paste into another PDF file.
find and replace text in pdf; copy and paste pdf text
The 
SELECT
clause identifies one or more column names in a database table(s). After identi-
fying  the  columns  in  the 
SELECT
clause,  you  must  tell  the  database  which  table(s)  the
columns live in using the 
FROM
clause. It is customary in SQL to append a semicolon (
;
) after
the SQL statement to indicate the statement’s ending point.
To retrieve all rows in a database table, the wildcard character (
*
) can be used like this.
SELECT   *
FROM     Employees;
You can execute SQL queries in Access in one of a couple of ways. You can simply save your
query, return to the Queries window, and double-click your newly saved query. Or, leaving
your SQL View window open, select View, Datasheet View from the menu. 
Another way to execute your SQL queries is to select Query, Run item from the menu, or
click the red exclamation mark (
!
) on the Toolbar. Either way, the results from the preced-
ing query running against the 
Northwind
database are shown in Figure 8.4.
The Datasheet window shown in Figure 8.4 displays the result set returned from the SQL query.
A result setis a common phrase used to describe the result or records returned
by a SQL query.
Sometimes it is not necessary to retrieve all columns in a query. To streamline your query,
supply specific column names separated by commas in the 
SELECT
clause.
SELECT   LastName, FirstName, Title
FROM     Employees;
TRICK
217
Chapter 8  •  Microsoft Jet SQL
Figure 8.4
Viewing the
results of a
simple query.
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
PDF ›› C# PDF: Extract PDF Image. How to C#: Extract Image from PDF Document. Support PDF Image Extraction from a Page, a Region on a Page, and PDF Document.
copy text from pdf; delete text from pdf online
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
VB.NET PDF - Extract Image from PDF Document in VB.NET. Support PDF Image Extraction from a Page, a Region on a Page, and PDF Document in VB.NET Project.
.net extract text from pdf; copy text from pdf with formatting
218
In the preceding query I ask the database to retrieve only the last names, first names, and
titles of each employee record. Output is shown in Figure 8.5.
Microsoft Access allows users to create table and column names with spaces.
Use brackets (
[ ]
) to surround table and column names with spaces in SQL
queries. Failure to do so can cause errors when running your queries.
You can change the order in which the result set displays columns by changing the column
order in your SQL queries.
SELECT   Title, FirstName, LastName 
FROM     Employees;
Changing the order of column names in a SQL query does not alter the data returned in a
result set, but rather its column display order.
Conditions
SQL queries allow basic conditional logic for refining the result set returned by the query.
Conditions in SQL are built using the 
WHERE
clause.
SELECT   Title, FirstName, LastName
FROM     Employees
WHERE    Title = ‘Sales Representative’;
TRAP
Access VBA Programming for the Absolute Beginner, Second Edition
Figure 8.5
Specifying
individual column
names in a SQL
query.
VB.NET PDF copy, paste image library: copy, paste, cut PDF images
XDoc.PDF ›› VB.NET PDF: Copy, Paste, Cut Image in Page. VB.NET PDF - Copy, Paste, Cut PDF Image in VB.NET. VB.NET: Copy and Paste Image in PDF Page.
cut and paste pdf text; copy text from pdf online
C# PDF copy, paste image Library: copy, paste, cut PDF images in
|. Home ›› XDoc.PDF ›› C# PDF: Copy, Paste, Cut Image in Page. C#.NET PDF SDK - Copy, Paste, Cut PDF Image in C#.NET. C# Guide
extracting text from pdf; extract text from pdf with formatting
In the preceding query I use a condition in the 
WHERE
clause to eliminate rows returned by
the query where the employee’s title equals 
Sales Representative
. Output from this query
is seen in Figure 8.6.
Note that textual data such as ‘Sales Representative’ in the 
WHERE
clause’s expression must
always be enclosed by single quotes.
SQL conditions work much like the conditions you’ve already learned about in Access VBA
in that the 
WHERE
clause’s condition evaluates to either 
true
or 
false
. You can use the oper-
ators seen in Table 8.1 in SQL expressions.
219
Chapter 8  •  Microsoft Jet SQL
Figure 8.6
Using conditions
in the 
WHERE
clause to refine
the result set.
Operator
Description
=
Equals
<>
Not equal
>
Greater than
<
Less than
>=
Greater than or equal to
<=
Less than or equal to
T
AB LE
8.1     C
ON DIT IO NA L
O
PE R ATO RS
U
SE D
IN
SQ L   E
XP RE SS IO NS
C# PDF insert text Library: insert text into PDF content in C#.net
Text to PDF. C#.NET PDF SDK - Insert Text to PDF Document in C#.NET. Providing C# Demo Code for Adding and Inserting Text to PDF File Page with .NET PDF Library.
c# extract text from pdf; export highlighted text from pdf
C# PDF Text Search Library: search text inside PDF file in C#.net
Text: Search Text in PDF. C# Guide about How to Search Text in PDF Document and Obtain Text Content and Location Information with .NET PDF Control.
get text from pdf c#; extract text from pdf file using java
220
Access VBA Programming for the Absolute Beginner, Second Edition
Figure 8.7
Refining the
products result
set with
conditional
operators.
To demonstrate conditional operators, the next query returns the rows in the 
Products
table
where the value for units in stock is less than or equal to 
5
. Output is seen in Figure 8.7.
SELECT   *
FROM     Products
WHERE    UnitsInStock <= 5;
Note that single quotes are not used to surround numeric data when searching
numeric data types.
SQL queries also can contain compound conditions using the keywords 
AND
OR
, and 
NOT
. The
next two SQL queries demonstrate the use of compound conditions in the 
WHERE
clause.
SELECT   *
FROM     Products
WHERE    UnitsInStock < 5 AND UnitPrice > 10;
SELECT      *
FROM        Products
WHERE NOT   (UnitsInStock = 0);
Before moving on to the next section on SQL, I’d like to share with you a paradigm shift.
Believe it or not, most SQL programmers are the translators for their companies’ informa-
tion  needs.  To  better  understand  this,  think  of  SQL  programmers  as  the  intermediaries
TRAP
C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net
C#.NET PDF SDK - Convert PDF to Text in C#.NET. Integrate following RasterEdge C#.NET text to PDF converter SDK dlls into your C#.NET project assemblies;
delete text from pdf; find and replace text in pdf file
between business people and the unwieldy database. The business person comes in to your
office and says, “I’m concerned about low inventories. Could you tell me what products we
have in stock with unit quantities less than or equal to 5?” As the SQL programmer, you smile
and say, “Sure, give me a minute.” After digesting what your colleague is asking, you translate
the inquiry into a question the database understands—in other words, a SQL query such as the
following.
SELECT   *
FROM     Products
WHERE    UnitsInStock <= 5;
Within seconds,  your query  executes and you  print out  the  results for your amazed  and
thankful colleague. You’re the superstar, the genius, the miracle worker.  But most of all,
you’re the translator.
Computed Fields
Computed fields do not exist in the database as columns. Instead, computed fields are gen-
erated using calculations on columns that do exist in the database. Simple calculations such
as addition, subtraction, multiplication, and division can be used to create computed fields.
When creating computed fields in SQL, the 
AS
clause assigns a name to the computed field.
The next SQL statement uses a computed field to calculate subtotals based on two columns
(
Unit Price
and 
Quantity
) in the 
Order Details
table. Output is seen in Figure 8.8.
SELECT   OrderID, (UnitPrice * Quantity) AS SubTotals
FROM     [Order Details];
221
Chapter 8  •  Microsoft Jet SQL
Figure 8.8
Using SQL to
build computed
fields.
222
Access VBA Programming for the Absolute Beginner, Second Edition
Note the presence of the 
SubTotals
column name in Figure 8.8. The 
SubTotals
field does not
exist in the 
Order Details
table. Rather, the 
SubTotals
field is created in the SQL statement
using the 
AS
clause to assign a name to an expression. Though parentheses are not required,
I use them in my computed field’s expression to provide readability and order of operations,
if necessary.
Built-In Functions
Just as VBA incorporates many intrinsic functions such as 
Val
Str
UCase
, and 
Len
, SQL pro-
vides  many built-in functions for determining information on your result sets. You learn
about these SQL 
aggregate functions
in this section:
AVG
COUNT
FIRST
LAST
MIN
MAX
SUM
DISTINCT
The 
AVG
function takes an expression such as a column name for a parameter and returns
the mean value in a column or other expression.
SELECT 
AVG(UnitPrice)
FROM 
Products;
The preceding SQL statement returns a single value, which is the mean value of the 
UnitPrice
column in the 
Products
table. Output is seen in Figure 8.9.
Figure 8.9
Using the AVG
function to
calculate the
mean value of
a column.
Notice in Figure 8.9 that the column heading gives no clue as to the meaning of the SQL
statement’s return value. To correct this, simply use the 
AS
clause.
SELECT   AVG(UnitPrice) AS [Average Unit Price]
FROM     Products;
The 
COUNT
function is a very useful function for determining how many records are returned
by a query. For example, the following SQL query uses the 
COUNT
function to determine how
many customer records are in the 
Customers
table.
SELECT   COUNT(*) AS [Number of Customers]
FROM     Customers;
Figure 8.10 reveals the output from the 
COUNT
function in the preceding SQL statement. Note
that it’s possible to supply a column name in the 
COUNT
function, but the wildcard character
(
*
) performs a faster calculation on the number of records found in a table.
The 
FIRST
and 
LAST
functions return the first and last records in a result set, respectively.
Because records are not necessarily stored in alphanumeric order, the 
FIRST
and 
LAST
func-
tions may produce seemingly unexpected results. The results, however, are accurate. These
functions report the first and last expressions  in  a result set as stored  in a database  and
returned by the SQL query.
SELECT
FIRST(LastName) AS [First Employee Last Name],
LAST(LastName) AS [Last Employee Last Name] 
FROM 
Employees;
223
Chapter 8  •  Microsoft Jet SQL
Figure 8.10
Displaying the
result of a COUNT
function.
224
The preceding SQL statement uses the 
FIRST
and 
LAST
functions to retrieve the first and last
names (specifically the last name) of employee records in the 
Employees
table. Output is seen
in Figure 8.11.
To determine the minimum and maximum values of an expression in SQL, use the 
MIN
and
MAX
functions,  respectively.  Like  other  SQL  functions,  the 
MIN
and 
MAX
functions  take  an
expression and return a value. The next SQL statement uses these two functions to deter-
mine the minimum and maximum unit prices found in the 
Products
table. Output is seen
in Figure 8.12.
SELECT
MIN(UnitPrice) AS [Minimum Unit Price],
MAX(UnitPrice) AS [Maximum Unit Price]
FROM
Products;
Access VBA Programming for the Absolute Beginner, Second Edition
Figure 8.11
Using the FIRST
and LAST
functions to
retrieve the first
and last values of
a result set.
Figure 8.12
Retrieving the
minimum and
maximum values
from an
expression using
the MINand MAX
functions.
Documents you may be interested
Documents you may be interested