網(wǎng)站首頁 編程語言 正文
查詢列
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 "進貨單價" 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 <條件表達式>;
例子:選取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ù)運算符:+、-、*、/。
運算表達式中也可以用括號。
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ù)類型進行比較。
對字符串比較的時候,按照字典順序比較。比如‘10’比‘2’小。
SELECT product_name, product_type, regist_date FROM Product WHERE regist_date < '2222-06-01';
WHERE子句的條件表達式中,可用計算表達式。
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中邏輯運算被稱為三值邏輯。
原文鏈接:https://jiangyiming.blog.csdn.net/article/details/123918086
相關(guān)推薦
- 2022-04-19 提高css性能的優(yōu)化方法有哪些
- 2022-06-12 3種Python?實現(xiàn)酷炫進度條的實用方法_python
- 2022-10-14 如何查看EJB項目的版本2.0或3.0
- 2023-01-23 React新擴展函數(shù)setState與lazyLoad及hook介紹_React
- 2021-12-02 Flutter將整個App變?yōu)榛疑暮唵螌崿F(xiàn)方法_Android
- 2022-10-08 LyScript實現(xiàn)繞過反調(diào)試保護的示例詳解_python
- 2022-10-07 C語言直接插入排序算法介紹及示例_C 語言
- 2022-05-17 ubuntu安裝curl時,出現(xiàn)configure: error: select TLS backe
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支