The third chapter - Chapter IX
third chapter
Display a list of databases
SHOW DATABASES;
Within a database to obtain a list of available tables
SHOW TABLES;
Display table columns (two statements equivalent)
SHOW COLUMNS FROM customers;
DESCRIBE customers;
Chapter Four
Prodccuts retrieved from the table column prod_name
SELECT prod_name
FROM products;
Retrieving three
SELECT prod_id, prod_name, prod_price
FROM products;
Retrieve all columns
SELECT *
FROM products;
Return a different row, the same row are not repeated
SELECT DISTINCT vend_id
FROM products;
Back more than 5 (line count starts from 0, row 0, row 1, row 2, row 3, line 4)
SELECT prod_name
FROM products
LIMIT 5;
Returns the next five lines (lines 6-10)
SELECT prod_name
FROM products
LIMIT 5, 5;
Fully qualified name table (two equivalent statement)
SELECT prod_name
FROM products;
SELECT products.prod_name
FROM stu_projects.products;
chapter Five
Prod_name columns of alphabetical
SELECT prod_name
FROM products
ORDER BY prod_name;
By a plurality of columns are arranged (in front of the high priority column)
SELECT prod_id, prod_price, prod_name
FROM products
ORDER BY prod_price, prod_name;
descending sort
SELECT prod_id, prod_price, prod_name
FROM products
ORDER BY prod_price DESC;
By a plurality of columns are arranged in descending portion
SELECT prod_id, prod_price, prod_name
FROM products
ORDER BY prod_price DESC, prod_name;
Find out the price of the most expensive items
SELECT prod_price
FROM products
ORDER BY prod_price DESC
LIMIT 1;
Chapter Six
WHERE filtered data specified condition (ORDER BY located after WHERE)
SELECT prod_name, prod_price
FROM products
WHERE prod_price = 2.50;
Prod_name = fuses specified row
SELECT prod_name, prod_price
FROM products
WHERE prod_name = 'fuses';
Price of $ 10 less than all the goods
SELECT prod_name, prod_price
FROM products
WHERE prod_price < 10;
Equal to $ 10 less than all the goods
SELECT prod_name, prod_price
FROM products
WHERE prod_price <= 10;
Mismatch checks
SELECT vend_id, prod_name
FROM products
WHERE vend_id <> 1003;
The last sentence is equivalent to
WHERE vend_id != 1003;
Check the value range
SELECT prod_name, prod_price
FROM products
WHERE prod_price BETWEEN 5 AND 10;
Null check
SELECT prod_name
FROM products
WHERE pro_price IS NULL;
SELECT cust_id
FROM customers
WHERE cust_email IS NULL;
Chapter VII
AND operator
SELECT prod_id, prod_price, prod_name
FROM products
WHERE vend_id = 1003 AND prod_price <= 10;
OR operator
SELECT prod_name, prod_price
FROM products
WHERE vend_id = 1002 OR vend_id = 1003;
AND calculation order priority than OR
SELECT prod_name, prod_price
FROM produts
WHERE vend_id = 1002 OR vend_id = 1003 AND prod_price >= 10;
The last sentence is equivalent to
WHERE vend_id = 1002 OR (vend_id = 1003 AND prod_price >= 10);
Change the priority brackets
SELECT prod_name, prod_price
FROM products
WHERE (vend_id = 1002 OR vend_id = 1003) AND prod_price >= 10;
9 IN operator (somewhat similar OR)
SELECT prod_name, prod_price
FROM products
WHERE vend_id IN (1002, 1003)
ORDER BY prod_name;
NOT operator
SELECT prod_name, prod_price
FROM products
WHERE vend_id NOT IN (1002, 1003)
ORDER BY prod_name;
chapter eight
% Wildcard
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE 'jet%';
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE '%anvil%';
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE's%e';
% Can match 0, 1 or more characters.
_ Wildcard
SELECT prod_id, prod_name
FROM products
WHERE prod_name LIKE '_ ton anvil';
_ Always match a character, no more and no less.
Chapter nine
Regular Expressions
The basic character matches
SELECT prod_name
FROM products
WHERE prod_name REGEXP '1000'
ORDER BY prod_name;
SELECT prod_name
FROM products
WHERE prod_name REGEXP '.000'
ORDER BY prod_name;
An OR match
SELECT prod_name
FROM products
WHERE prod_name REGEXP '1000|2000'
ORDER BY prod_name;
Match one of several characters
SELECT prod_name
FROM products
WHERE prod_name REGEXP '[123] Ton'
ORDER BY prod_name;
If the penultimate sentence written
WHERE prod_name REGEXP '1|2|3 Ton'
It represents a matching string '1' or '2' or '3 ton'.
[^ 123] match anything other than the characters.
Matching range
SELECT prod_name
FROM products
WHERE prod_name REGEXP '[1-5] Ton'
ORDER BY prod_name;
Matching special characters
Find the entry containing '' wrong example of the value of character
SELECT vend_name
FROM vendors
WHERE vend_name REGEXP '.'
ORDER BY vend_name;
. Matches any character, so each row will be retrieved.
In order to match the special character, use \ \ as the lead.
SELECT vend_name
FROM vendors
WHERE vend_name REGEXP '\\.'
ORDER BY vend_name;
Examples of the plurality of matching
SELECT prod_name
FROM products
WHERE prod_name REGEXP '\\([0-9] sticks?\\)'
ORDER BY prod_name;
[0-9] to match any number, sricks? Matching and stick Sticks (after s? S so that selectable).
SELECT prod_name
FROM products
WHERE prod_name REGEXP '[[:digit:]]{4}'
ORDER BY prod_name;
Equivalent to
SELECT prod_name
FROM products
WHERE prod_name REGEXP '[0-9][0-9][0-9][0-9]'
ORDER BY prod_name;
Locator
Identify the product or to a decimal number beginning with ^ locators indicates the beginning of the string.
SELECT prod_name
FROM products
WHERE prod_name REGEXP '^[0-9\\.]'
ORDER BY prod_name;
The penultimate sentence is equivalent to
WHERE prod_name REGEXP '^[[:digit:]\\.]'