<< SQL must know will be >> - Note 2

Accordance with the guidelines of the book, use MySQL as DBMS, you need to create before using sentence table
in the website to download the official script running misstatements ASC characters on the MAC, the new file replication solutions
following is uncommented SQL script
Baidu network disk link
password: okgi

Retrieving data

SELECT

Single row
   SELECT prod_name
   FROM Products;
Multi-row
   SELECT prod_id, prod_name, prod_price
   FROM Products;
All columns

Tsuhaifu *

   SELECT *
   FROM Products;
Different search values

If the result have the same value, only once

   SELECT DISTINCT vend_id
   FROM Products;
Limit your search results

Return result does not exceed X line

   SELECT prod_name 
   FROM Products 
   LIMIT 5 OFFSET 5;

5 shows a later date from the fifth row
described above can also be written

   SELECT prod_name 
   FROM Products 
   LIMIT 5,5;

Three kinds of comments

--#/**/



Sort Your Results

ORDER BY

Sequence
  SELECT prod_name
  FROM Products
  ORDER BY prod_name;
Sort by multiple columns
  SELECT prod_id, prod_price, prod_name 
  FROM Products 
  ORDER BY prod_price, prod_name;
Sort by Location column
  SELECT prod_id, prod_price, prod_name 
  FROM Products 
  ORDER BY 2,3;
Specify the sort direction

ASCOr DESC, by default ascending

  SELECT prod_id, prod_price, prod_name 
  FROM Products 
  ORDER BY prod_price DESC;




Filtering data

WHERE

A single value
  SELECT prod_name, prod_price
  FROM Products 
  WHERE prod_price = 3.49;
Mismatch
  SELECT prod_name, prod_price
  FROM Products 
  WHERE prod_price <> 'DLLO1';
The range of values
  SELECT prod_name, prod_price
  FROM Products 
  WHERE prod_price BETWEEN 5 AND 10;
Null
  SELECT cust_name
  FROM CuStomers
  WHERE cust_email IS NULL;




Advanced data filtering

Combining WHERE

AND
  SELECT prod_id, prod_price, prod_name
  FROM Products
  WHERE vend_id = 'DLL01' AND prod_price <= 4;
OR
  SELECT prod_name, prod_price 
  FROM Products 
  WHERE vend_id = 'DLL01' OR vend_id = 'BRS01';

AND higher priority than OR, if necessary, to determine the priority brackets

  SELECT prod_name, prod_price 
  FROM Products
  WHERE (vend_id = 'DLL01' OR vend_id = 'BRS01')
  AND prod_price >= 10;
IN
  SELECT prod_name, prod_price 
  FROM Products 
  WHERE vend_id IN ( 'DLL01', 'BRS01' )
  ORDER BY prod_name;
NOT
  SELECT prod_name 
  FROM Products 
  WHERE NOT vend_id = 'DLL01'
  ORDER BY prod_name DESC;




Tsuhaifu

LIKE

%Tsuhaifu

Appear to represent any character any number of times, including zero

  SELECT prod_id, prod_name 
  FROM Products 
  WHERE prod_name LIKE 'Fish%';
_Tsuhaifu

Matches any single character

  SELECT prod_id, prod_name 
  FROM Products 
  WHERE prod_name LIKE '__ inch teddy bear';
[]Tsuhaifu

Specify a character set
in MySQL 8 does not seem to be used with, and use RLIKE REGEXP and brackets with no
suggestion view the manuals section on regular expressions

  SELECT cust_contact
  FROM Customers 
  WHERE cust_contact regexp 'J%'
  ORDER BY cust_contact;
-- after test, the '[]' is useless

Guess you like

Origin www.cnblogs.com/burymyname/p/11907256.html