欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java mysql特殊形式的查詢語(yǔ)句詳解

 更新時(shí)間:2022年02月19日 11:18:48   作者:_卷心菜_  
這篇文章主要介紹了Java mysql特殊形式的查詢,包括子查詢和聯(lián)合查詢、自身連接查詢問(wèn)題,本文通過(guò)sql語(yǔ)句給大家介紹的非常詳細(xì),需要的朋友可以參考下

創(chuàng)建新表:

-- 創(chuàng)建學(xué)員表
CREATE TABLE IF NOT EXISTS stu(
id TINYINT UNSIGNED AUTO_INCREMENT KEY COMMENT '編號(hào)',
username VARCHAR(20) NOT NULL UNIQUE COMMENT '學(xué)員名稱',
score TINYINT UNSIGNED NOT NULL COMMENT '學(xué)員考試分?jǐn)?shù)'
)ENGINE=INNODB;

INSERT stu(username, score) VALUES('king', 95),
('queen', 75),
('zhangsan', 69),
('lisi', 78),
('wangwu', 87),
('zhaoliu', 88),
('tianqi', 98),
('ceshi', 99),
('tiancai', 50);

-- 創(chuàng)建分?jǐn)?shù)級(jí)別表
CREATE TABLE IF NOT EXISTS `level`(
id TINYINT UNSIGNED AUTO_INCREMENT KEY COMMENT '編號(hào)',
score TINYINT UNSIGNED COMMENT '分?jǐn)?shù)'
)ENGINE=INNODB;

INSERT `level`(score) VALUES(90), (80), (70);

1. 子查詢

1.1. SELECT 字段名稱 FROM 表名 WHERE 字段名稱 = (SELECT 字段名稱 FROM 表名);

1.2. 內(nèi)層語(yǔ)句查詢的結(jié)果可以作為外層語(yǔ)句查詢的條件

1.3. 由IN引發(fā)的子查詢

SELECT * FROM user1 WHERE depId IN (1, 2, 3, 4);

SELECT * FROM user1 
WHERE depId IN (SELECT id FROM dep);

1.4. 由比較運(yùn)算符引出子查詢

SELECT id, username, score FROM stu
WHERE score >= (SELECT score FROM `level` WHERE id = 1);

1.5. 由EXISTS引發(fā)的子查詢

若EXISTS后的結(jié)果為真,則返回查詢的結(jié)果,否則返回結(jié)果為空。

SELECT * FROM stu WHERE EXISTS (SELECT score FROM `level` WHERE id = 1);

1.6. ANY SOME ALL

在這里插入圖片描述

取ANY|SOME|ALL后的括號(hào)中的查詢結(jié)果的最小值或最大值。

-- ANY SOME ALL
SELECT * FROM stu WHERE score >= ANY(SELECT score FROM `level`);
SELECT * FROM stu WHERE score > SOME(SELECT score FROM `level`);
SELECT * FROM stu WHERE score > ALL(SELECT score FROM `level`);

1.7. CREATE …SELECT

-- 創(chuàng)建一個(gè)user3表,將表stu中的id, username的信息寫(xiě)入user3中
CREATE TABLE user3(
id INT UNSIGNED AUTO_INCREMENT KEY,
username VARCHAR(20)
) SELECT id, username FROM stu;

1.8. INSERT…SELECT

-- 將user1表中的username信息插入到user3中
INSERT user3(username) SELECT username FROM user1;

1.9. CREATE TABLE 表名1 LIKE 表名2;

創(chuàng)建和表2結(jié)構(gòu)相同的表1。

2.聯(lián)合查詢

2.1 UNION

去掉兩個(gè)表中的重復(fù)值。

SELECT 字段名稱,… FROM 表名1
UNION
SELECT 字段名稱,… FROM 表名2;

2.2 UNION ALL

只是將兩個(gè)表進(jìn)行簡(jiǎn)單的合并,不會(huì)去掉重復(fù)值。

SELECT 字段名稱,… FROM 表名1
UNION ALL 
SELECT 字段名稱,… FROM 表名2;

3. 自身連接查詢

3.1. 無(wú)限級(jí)分類的實(shí)現(xiàn)形式

創(chuàng)建表cate:

-- 創(chuàng)建表cate
CREATE TABLE cate(
id SMALLINT UNSIGNED AUTO_INCREMENT KEY COMMENT '編號(hào)',
cateName VARCHAR(100) NOT NULL UNIQUE COMMENT '分類名稱',
pId SMALLINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '父id'
);

-- 插入頂級(jí)分類
INSERT cate(cateName, pId) VALUES('服裝', 0),
('數(shù)碼', 0),
('玩具', 0),
-- 插入服裝的子分類
('男裝', 1),
('女裝', 1),
('內(nèi)衣', 1),  
-- 插入數(shù)碼的子分類
('電視', 2),
('冰箱', 2),
('洗衣機(jī)', 2),
-- 插入玩具的子分類
('愛(ài)馬仕', 3),
('LV', 3),
('GUCCI', 3),
-- 插入男裝的子分類
('夾克', 4),
('襯衫', 4),
('褲子', 4),
-- 插入電視的子分類
('液晶電視', 7),
('等離子電視', 7),
('背投電視', 7);

在這里插入圖片描述

自身連接:

-- 查詢所有的分類信息,并且得到其父分類
SELECT s.id, s.cateName AS sCateName, p.cateName AS pCateName
FROM cate AS s
LEFT JOIN cate AS p
ON s.pId = p.id;

在這里插入圖片描述

到此這篇關(guān)于Java mysql特殊形式的查詢的文章就介紹到這了,更多相關(guān)Java mysql查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring中IoC優(yōu)點(diǎn)與缺點(diǎn)解析

    Spring中IoC優(yōu)點(diǎn)與缺點(diǎn)解析

    這篇文章主要為大家詳細(xì)解析了Spring中IoC優(yōu)點(diǎn)與缺點(diǎn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Eclipse配置maven環(huán)境的圖文教程

    Eclipse配置maven環(huán)境的圖文教程

    下面小編就為大家?guī)?lái)一篇Eclipse配置maven環(huán)境的圖文教程。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • Java 詳解單向加密--MD5、SHA和HMAC及簡(jiǎn)單實(shí)現(xiàn)實(shí)例

    Java 詳解單向加密--MD5、SHA和HMAC及簡(jiǎn)單實(shí)現(xiàn)實(shí)例

    這篇文章主要介紹了Java 詳解單向加密--MD5、SHA和HMAC及簡(jiǎn)單實(shí)現(xiàn)實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Spring的循環(huán)依賴、三級(jí)緩存解決方案源碼詳細(xì)解析

    Spring的循環(huán)依賴、三級(jí)緩存解決方案源碼詳細(xì)解析

    這篇文章主要介紹了Spring的循環(huán)依賴、三級(jí)緩存解決方案源碼詳細(xì)解析,在Spring中,由于IOC的控制反轉(zhuǎn),創(chuàng)建對(duì)象不再是簡(jiǎn)單的new出來(lái),而是交給Spring去創(chuàng)建,會(huì)經(jīng)歷一系列Bean的生命周期才創(chuàng)建出相應(yīng)的對(duì)象,需要的朋友可以參考下
    2024-01-01
  • Spring Security 實(shí)現(xiàn)短信驗(yàn)證碼登錄功能

    Spring Security 實(shí)現(xiàn)短信驗(yàn)證碼登錄功能

    這篇文章主要介紹了Spring Security 實(shí)現(xiàn)短信驗(yàn)證碼登錄功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • SpringBoot源碼 PropertySource解析

    SpringBoot源碼 PropertySource解析

    PropertySource是spring中對(duì)于鍵值屬性的一種抽象,主要是name和sourcePropertyResolver是對(duì)PropertySource提供對(duì)外的統(tǒng)一數(shù)據(jù)處理,對(duì)于占位符的處理委托于PropertyPlaceholderHelper,對(duì)Springboot?源碼 PropertySource相關(guān)知識(shí)感興趣的朋友一起看看吧
    2023-01-01
  • SpringBoot(cloud)自動(dòng)裝配bean找不到類型的問(wèn)題

    SpringBoot(cloud)自動(dòng)裝配bean找不到類型的問(wèn)題

    這篇文章主要介紹了SpringBoot(cloud)自動(dòng)裝配bean找不到類型的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java數(shù)組擴(kuò)容的三大小結(jié)

    Java數(shù)組擴(kuò)容的三大小結(jié)

    當(dāng)數(shù)組需要容納更多元素時(shí),可以通過(guò)擴(kuò)容來(lái)增加其容量,本文主要介紹了Java數(shù)組擴(kuò)容的三大小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • Mybatis動(dòng)態(tài)SQL之where標(biāo)簽用法說(shuō)明

    Mybatis動(dòng)態(tài)SQL之where標(biāo)簽用法說(shuō)明

    這篇文章主要介紹了Mybatis動(dòng)態(tài)SQL之where標(biāo)簽用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • java連接mysql數(shù)據(jù)庫(kù)亂碼的解決方法

    java連接mysql數(shù)據(jù)庫(kù)亂碼的解決方法

    這篇文章主要介紹通過(guò)java連接mysql數(shù)據(jù)庫(kù)的時(shí)候,頁(yè)面出現(xiàn)亂碼,這里簡(jiǎn)單分享下解決方法, 需要的朋友可以參考下
    2013-05-05

最新評(píng)論