PostgreSQL數(shù)據(jù)庫的基本查詢操作
查詢列
SELECT語句,用于從表中選取數(shù)據(jù)。
格式:
SELECT <列名>,... FROM <表名>;
從Product表中,查詢?nèi)小?/p>
SELECT product_id, product_name, purchase_price FROM Product;

查詢所有列,格式:
SELECT *FROM <表名>;
星號代表全部列。
SELECT *FROM Product;

可以用AS關(guān)鍵字給列設(shè)定別名。
SELECT product_id AS "商品編號",
product_name AS "商品名稱",
purchase_price AS "進(jìn)貨單價"
FROM Product;

去除重復(fù)數(shù)據(jù)DISTINCT
SELECT DISTINCT product_type FROM Product;

這里的去除并不是真的就把重復(fù)的數(shù)據(jù)給刪了,只是展示出來的數(shù)據(jù)是不重復(fù)的。

也可以在多列之前使用DISTINCT。
SELECT DISTINCT product_type, regist_date FROM Product;

WHERE子句
SELECT語句使用WHERE子句,查詢出符合指定條件的數(shù)據(jù)。
格式:
SELECT <列名>,... FROM <表名> WHERE <條件表達(dá)式>;
例子:選取product_type = '衣服’的商品。
SELECT product_name, product_type FROM Product WHERE product_type = '衣服';

也可以按下面這個方式
SELECT product_name FROM Product WHERE product_type = '衣服';

注釋
一行注釋:
-- 本SELECT語句會從結(jié)果中刪除重復(fù)行。 SELECT DISTINCT product_id, purchase_price FROM Product;
多行注釋:
/* 本SELECT語句, 會從結(jié)果中刪除重復(fù)行。*/ SELECT DISTINCT product_id, purchase_price FROM Product;
算術(shù)運算符
算術(shù)運算符:+、-、*、/。
運算表達(dá)式中也可以用括號。
SELECT product_name, sale_price,
sale_price * 2 AS “sale_price_x2"
FROM Product;

含有NULL的運算,結(jié)果都是NULL。
比較運算符
=表示等于、<>表示不等于、>=、<=、>、<。
SELECT product_name, product_type FROM Product WHERE sale_price = 500;

SELECT product_name, product_type FROM Product WHERE sale_price <> 500;

比較運算符,可以對幾乎所有數(shù)據(jù)類型進(jìn)行比較。
對字符串比較的時候,按照字典順序比較。比如‘10’比‘2’小。
SELECT product_name, product_type, regist_date FROM Product WHERE regist_date < '2222-06-01';

WHERE子句的條件表達(dá)式中,可用計算表達(dá)式。
SELECT product_name, sale_price, purchase_price FROM Product WHERE sale_price - purchase_price >= 500;

不能對NULL使用比較運算符。
如果選取NULL的記錄,使用IS NULL運算符。
SELECT product_name, purchase_price FROM Product WHERE purchase_price IS NULL;

選取不是NULL的記錄,使用IS NOT NULL運算符。
SELECT product_name, purchase_price FROM Product WHERE purchase_price IS NOT NULL;

邏輯運算符
NOT運算符:用于否定某一條件。
下面等價于WHERE sale_price < 1000;
SELECT product_name, product_type, sale_price FROM Product WHERE NOT sale_price >= 1000;

AND運算符:
SELECT product_name, purchase_price FROM Product WHERE product_type = '廚房用具' AND sale_price >= 3000;
OR運算符:
SELECT product_name, purchase_price
FROM Product
WHERE product_type = '廚房用具'
OR sale_price >= 3000;

AND運算符的優(yōu)先級高于OR運算符,如果想要選出product_type = ‘辦公用品’,而且登記日期為2222-02-22或2222-06-22,按照下面這個方式是不行的。
SELECT product_name, product_type, regist_date FROM Product WHERE regist_date = '2222-02-22' OR regist_date = '2222-06-22' AND product_type = '辦公用品';

要優(yōu)先執(zhí)行OR運算符可以使用括號,如下所示。
SELECT product_name, product_type, regist_date
FROM Product
WHERE product_type = '辦公用品'
AND ( regist_date = '2222-02-22'
OR regist_date = '2222-06-22');

比較運算符會把運算結(jié)果以真值形式返回,結(jié)果成立為真,不成立為假。
可以通過創(chuàng)建真值表,理解一些復(fù)雜的條件。
SELECT product_name, purchase_price FROM Product WHERE purchase_price = 2800;
SELECT product_name, purchase_price FROM Product WHERE NOT purchase_price = 2800;
SELECT product_name, purchase_price FROM Product
經(jīng)觀察發(fā)現(xiàn),SQL中真值還有一種,叫UNKNOWN,既不真也不假,稱之為不確定。
這是因為數(shù)據(jù)含有NULL。
因此,SQL中邏輯運算被稱為三值邏輯。

以上就是PostgreSQL數(shù)據(jù)庫的基本查詢操作的詳細(xì)內(nèi)容,更多關(guān)于PostgreSQL 數(shù)據(jù)庫查詢操作的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
pgsql之create user與create role的區(qū)別介紹
這篇文章主要介紹了pgsql之create user與create role的區(qū)別介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
詳解PostgreSQL?14.4安裝使用及一些安裝的異常問題
這篇文章主要介紹了PostgreSQL?14.4的安裝以及使用以及一些安裝的異常,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07
PostgreSQL的generate_series()函數(shù)的用法說明
這篇文章主要介紹了PostgreSQL的generate_series()函數(shù)的用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
PostgreSQL:string_agg?多列值聚合成一列的操作示例
PostgreSQL中的STRING_AGG()函數(shù)是一個聚合函數(shù),用于連接字符串列表并在字符串之間放置分隔符,這篇文章主要介紹了PostgreSQL:string_agg多列值聚合成一列,需要的朋友可以參考下2023-08-08
15個postgresql數(shù)據(jù)庫實用命令分享
這篇文章主要介紹了15個實用的postgresql數(shù)據(jù)庫命令分享,都是一些技巧性的postgresql命令,需要的朋友可以參考下2014-07-07
postgresql如何查詢重復(fù)計數(shù)及去重查詢
這篇文章主要介紹了postgresql如何查詢重復(fù)計數(shù)及去重查詢問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
postgresql修改完端口后直接psql連接數(shù)據(jù)庫報錯的解決
這篇文章主要介紹了postgresql修改完端口后直接psql連接數(shù)據(jù)庫報錯的解決,具有很好的參考價值,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01

