PG數據庫基本命令——查詢(筆記)


 

1、插入數據(insert 語句)

語法:

INSERT INTO TABLE_NAME (column1, column2, column3,...columnN)  
VALUES (value1, value2, value3,...valueN);

實例:

INSERT INTO employees(  ID, NAME, AGE, ADDRESS, SALARY)  
VALUES
(1, 'Maxsu', 25, '海口市人民大道2880號', 109990.00 ), 
(2, 'minsu', 25, '廣州中山大道 ', 125000.00 ), 
(3, '李洋', 21, '北京市朝陽區', 185000.00),   
(4, 'Manisha', 24, 'Mumbai', 65000.00), 
(5, 'Larry', 21, 'Paris', 85000.00);

 

2、查詢數據(SELECT語句)

語法:

SELECT "column1", "column2"..."columnN" FROM "table_name";
SELECT * FROM "table_name";

 

3、更新數據(UPDATE語句)

語法:

UPDATE table_name  
SET column1 = value1, column2 = value2...., columnN = valueN  
WHERE [condition];

  

4、刪除數據(DELETE語句)

語法:

DELETE FROM table_name  
WHERE [condition];

   實例:

DELETE FROM EMPLOYEES  
WHERE ID = 1;

 

5、ORDER BY子句

語法:

SELECT column-list  
FROM table_name  
[WHERE condition]  
[ORDER BY column1, column2, .. columnN] [ASC | DESC];

   實例:

SELECT *   
FROM EMPLOYEES  
ORDER BY AGE ASC;

 

6、分組(GROUP BY子句)

語法:

SELECT column-list  
FROM table_name  
WHERE [conditions ]  
GROUP BY column1, column2....columnN  
ORDER BY column1, column2....columnN

實例:

SELECT NAME, SUM(SALARY)   
FROM EMPLOYEES   
GROUP BY NAME;

   在上面的例子中,當我們使用GROUP BY NAME時,重復的名字數據記錄被合並。 它指定GROUP BY減少冗余。

 

7、Having子句

  語法:

SELECT column1, column2  
FROM table1, table2  
WHERE [ conditions ]  
GROUP BY column1, column2  
HAVING [ conditions ]  
ORDER BY column1, column2

   實例:

  執行以下查詢表“EMPLOYEES”中name字段值計數大於1的名稱。

SELECT NAME,COUNT (NAME) 
FROM EMPLOYEES 
GROUP BY NAME HAVING COUNT (NAME) > 1;

   

 

 8、條件查詢

  條件查詢有:

    • AND 條件
    • OR 條件
    • AND & OR 條件
    • NOT 條件
    • LIKE 條件
    • IN 條件
    • NOT IN 條件
    • BETWEEN 條件

  1)AND條件

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition]    
AND [search_condition];

    實例:

SELECT *  
FROM EMPLOYEES  
WHERE SALARY > 120000  
AND ID <= 4;

 

  2) OR條件

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition]    
OR [search_condition];

     實例:

SELECT *  
FROM  EMPLOYEES 
WHERE NAME = 'Minsu'  
OR ADDRESS = 'Noida';

 

  3)AND & OR條件 

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition]  AND [search_condition]     
OR [search_condition];

      實例:

SELECT *  
FROM EMPLOYEES  
WHERE (NAME = 'Minsu' AND ADDRESS = 'Delhi')  
OR (ID>= 8);

 

  4)NOT條件

     語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition] NOT [condition];

    實例:

    查詢那些地址不為 NULL 的記錄信息,執行以下查詢:

SELECT *  
FROM EMPLOYEES  
WHERE address IS NOT NULL ;

 

     查詢那些年齡不是21和24的所有記錄,執行以下查詢:

SELECT *  
FROM EMPLOYEES  
WHERE age NOT IN(21,24) ;

 

  5)LIKE條件

    like 與 where 子句一起,用於從指定條件滿足 like 條件的表中獲取數據。

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition] LIKE [condition];

    實例:

    查詢名字以 Ma 開頭的數據記錄,如下查詢語句:

SELECT *   
FROM EMPLOYEES   
WHERE NAME LIKE 'Ma%';

     執行結果如下圖:

    

    查詢名字以su結尾的數據記錄,如下查詢語句:

SELECT *   
FROM EMPLOYEES   
WHERE NAME LIKE '%su';

 

 

   6)IN條件

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition] IN [condition];

 

     實例:

    查詢employee表中那些年齡為19,21的員工信息,執行以下查詢:

SELECT *  
FROM EMPLOYEES  
WHERE AGE IN (19, 21);

 

 

   7)NOT IN條件

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition] NOT IN [condition];

 

 

  8)BETWEEN條件

    語法:

SELECT column1, column2, ..... columnN    
FROM table_name    
WHERE [search_condition] BETWEEN [condition];

 

    實例:

SELECT *   
FROM EMPLOYEES   
WHERE AGE BETWEEN 24 AND 27;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM