日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
了解PG數(shù)據(jù)庫的外連接實(shí)現(xiàn)方法 (PG數(shù)據(jù)庫外連接)

PostgreSQL(簡(jiǎn)稱PG)是一種開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它支持多種數(shù)據(jù)類型和復(fù)雜查詢,并提供了固定和可擴(kuò)展的事務(wù)性存儲(chǔ)。在SQL查詢中,外連接是一種重要的查詢操作,用于連接兩個(gè)不同的表,并顯示出其中一個(gè)表中的所有行和另一個(gè)表中匹配行的結(jié)果。本文將介紹PG數(shù)據(jù)庫的外連接實(shí)現(xiàn)方法,包括左外連接、右外連接和全外連接。

1. 左外連接

左外連接(LEFT OUTER JOIN)是連接兩個(gè)表中的行,其中左表中的每個(gè)行都被包括在結(jié)果中,而右表中沒有匹配項(xiàng)的行以NULL值填充。 左外連接的語法格式如下:

SELECT column1, column2, …

FROM table1

LEFT [OUTER] JOIN table2

ON table1.column = table2.column;

左外連接需要兩個(gè)表,table1和table2,語句主要由SELECT、FROM和LEFT OUTER JOIN三個(gè)SQL關(guān)鍵字組成。SELECT關(guān)鍵字指定查詢的數(shù)據(jù)列,F(xiàn)ROM關(guān)鍵字指定查詢的數(shù)據(jù)表,而LEFT OUTER JOIN關(guān)鍵字則指定連接表的類型。下面是一段示例代碼:

SELECT customers.customer_id, orders.order_date

FROM customers

LEFT OUTER JOIN orders

ON customers.customer_id = orders.customer_id

ORDER BY customers.customer_id;

上述代碼將從customers表和orders表中提取出數(shù)據(jù)列customer_id和order_date,并將兩個(gè)表連接在一起,以顯示所有客戶的訂單日期。外連接將返回左表中所有條目(即所有客戶),并用NULL值替換沒有訂單的項(xiàng)。結(jié)果如下所示:

customer_id | order_date

————+————

AAA | 10-05-2023

BBB | NULL

CCC | 08-12-2023

DDD | NULL

2. 右外連接

右外連接(RIGHT OUTER JOIN)與左外連接類似,只不過是右表中的每個(gè)行都被包括在結(jié)果中,而左表中沒有匹配項(xiàng)的行以NULL值填充。右外連接的語法格式如下:

SELECT column1, column2, …

FROM table1

RIGHT [OUTER] JOIN table2

ON table1.column = table2.column;

右外連接也需要兩個(gè)表,table1和table2,語句主要由SELECT、FROM和RIGHT OUTER JOIN三個(gè)SQL關(guān)鍵字組成。下面是一個(gè)例子:

SELECT customers.customer_name, orders.order_date

FROM customers

RIGHT OUTER JOIN orders

ON customers.customer_id = orders.customer_id

ORDER BY customers.customer_name;

該代碼從customers表和orders表中提取出數(shù)據(jù)列customer_name和order_date,并將兩個(gè)表連接在一起,以顯示有訂單的客戶名字。右外連接將返回右表中所有條目(即所有訂單),并用NULL值替換沒有顧客的項(xiàng)。結(jié)果如下所示:

customer_name | order_date

————–+————

Allen | 10-05-2023

NULL | 06-08-2023

Bob | 08-12-2023

David | 09-03-2023

3. 全外連接

全外連接(FULL OUTER JOIN)是將左表和右表中的所有行包括在結(jié)果中,如果沒有匹配的行,則用NULL值填充。全外連接的語法格式如下:

SELECT column1, column2, …

FROM table1

FULL [OUTER] JOIN table2

ON table1.column = table2.column;

同樣的,全外連接也需要兩個(gè)表,table1和table2,語句主要由SELECT、FROM和FULL OUTER JOIN三個(gè)SQL關(guān)鍵字組成。下面是一個(gè)例子:

SELECT customers.customer_id, orders.order_date

FROM customers

FULL OUTER JOIN orders

ON customers.customer_id = orders.customer_id

ORDER BY customers.customer_id;

上述代碼將從customers表和orders表中提取出數(shù)據(jù)列customer_id和order_date,并將兩個(gè)表連接在一起,以顯示客戶和訂單。全外連接將返回左表和右表中所有條目,并用NULL值替換沒有匹配項(xiàng)的項(xiàng)。結(jié)果如下所示:

customer_id | order_date

————+————

AAA | 10-05-2023

BBB | NULL

CCC | 08-12-2023

DDD | NULL

NULL | 06-08-2023

在查詢復(fù)雜數(shù)據(jù)時(shí),PG數(shù)據(jù)庫的外連接非常重要,可以幫助您將兩個(gè)或多個(gè)表中的數(shù)據(jù)進(jìn)行關(guān)聯(lián)。本文介紹了PG數(shù)據(jù)庫的左外連接、右外連接和全外連接的語法格式和一些示例代碼,希望可以幫助讀者更好地。

相關(guān)問題拓展閱讀:

  • 怎么去查找在window上默認(rèn)安裝的pg數(shù)據(jù)庫路徑

怎么去查找在window上默認(rèn)安裝的pg數(shù)據(jù)庫路徑

1、windows下postgresql的安裝

我下載的為xxx9.2.exe一路默認(rèn)安裝即可。安裝位置為C:\Program Files\PostgreSQL。

安裝完畢后,在dos下執(zhí)行命令

>net user

列出當(dāng)前系統(tǒng)

用戶名

稱。我的用戶名為Administrator。

>psql –U Administrator –d postgres

該命令表示通過數(shù)據(jù)庫用戶Administrator連接數(shù)據(jù)庫postgres。

l 若顯示psql不是內(nèi)部或外部命令,則說明postgresql的bin文件路徑?jīng)]添加到windows系統(tǒng)中,右擊“我的電腦”->”屬性”->”高級(jí)”->”

環(huán)境變量

”->”Administrator”的用戶變量,選中“PATH”,點(diǎn)擊編輯明銷,將”C:\Program Files\PostgreSQL\9.2\bin”添加進(jìn)去,注意與前面的路徑用”;”隔開。電腦重啟生效。

l 若顯示角色Administrator不存在,則必須在postgresql數(shù)據(jù)庫中添加該用戶才能使其可以登錄。

在postgresql中

查詢系統(tǒng)用戶

postgres=#select* from pg_user;

查詢系統(tǒng)中的數(shù)據(jù)庫

postgres=#select* from pg_database;

說明一下:“template1”是Postgresql在初始化時(shí)自動(dòng)創(chuàng)建的測(cè)試數(shù)據(jù)庫。

創(chuàng)建postgresql數(shù)據(jù)庫Administrator用戶

方式1

在PostgreSQL中創(chuàng)建用戶postgreSQL用戶Administrator

用SQL Shell(psql)通過用戶postgres登錄PostgreSQL,創(chuàng)建用戶Administrator,

postgres=#create user “Administrator”;

方式2

通過windows下dos創(chuàng)建postgresql用戶Administrator

將PostgreSQL

文件夾

bin路徑添加到系統(tǒng)環(huán)境中后重啟生效.

通過windows下dos創(chuàng)建postgresql用戶是區(qū)分大小寫的。

配置客戶機(jī)訪問

為了配置遠(yuǎn)程主機(jī)和用戶可以連接到PostgreSQL服務(wù),你需要pg_hba.conf文件。文件包含大量注釋記錄用于遠(yuǎn)程訪問的選項(xiàng)。在我們的安裝示例中,我們?cè)试S局域網(wǎng)中任何主機(jī)的任何用戶訪問服務(wù)器上的數(shù)據(jù)庫。為了達(dá)到這個(gè)目的,我們添加以下的一行記錄到文件尾:

host all all 192.168.0.0/16 trust

這意味著所有

IP地址

由192.168開始的計(jì)算機(jī)可以訪問所有的數(shù)據(jù)庫。最簡(jiǎn)單的使配置生效的方法就是重啟服務(wù)器。

在dos下操作,通過createuser –Uolduser –P newuser來創(chuàng)建。

比如我們想創(chuàng)建postgresql數(shù)據(jù)庫用戶Administrator。

>createuser –U postgre –P Administrator

這樣創(chuàng)激滲游建的數(shù)據(jù)庫用戶Administrator沒有創(chuàng)建數(shù)據(jù)庫的權(quán)利,可以通過pgAdmin III登錄進(jìn)行查看。

若使其可以創(chuàng)建數(shù)據(jù)庫可以參照下面內(nèi)容進(jìn)行設(shè)置:

>createuser –U postgre –s Administrator

這樣具有創(chuàng)建數(shù)據(jù)庫能力。

createuser的用法可以通過在dos中輸入createuser –help查看。

MicrosoftWindows XP

(C)版喊臘權(quán)所有Microsoft Corp.

C:\Documentsand Settings\Administrator>createuser –help

createuser創(chuàng)建一個(gè)新的 PostgreSQL 用戶.

使用方法:

createuser …

選項(xiàng):

-c, –connection-limit=N 角色的連接限制(缺省: 沒有限制)

-d, –createdb此角色可以創(chuàng)建新數(shù)據(jù)庫

-D, –no-createdb此角色不可以創(chuàng)建新數(shù)據(jù)庫(默認(rèn))

-e, –echo 顯示發(fā)送到服務(wù)端的命令

-E, –encrypted口令加密存儲(chǔ)

-i, –inherit角色能夠繼承它所屬角色的權(quán)限

(這是缺省情況)

-I, –no-inherit角色不繼承權(quán)限

-l, –login角色能夠登錄(這是缺省情況)

-L, –no-login角色不能登錄

-N, –unencrypted口令不加密存儲(chǔ)

-P, –pwprompt給新角色指定口令

-r, –createrole這個(gè)角色可以創(chuàng)建新的角色

-R, –no-createrole這個(gè)角色沒有創(chuàng)建其它角色的權(quán)限(默認(rèn))

-s, –superuser角色將是超級(jí)用戶

-S, –no-superuser角色不能是超級(jí)用戶(默認(rèn))

-V, –version輸出版本信息, 然后退出

–interactive提示缺少角色名及其屬性

而不是使用默認(rèn)值

–replication角色能啟動(dòng)復(fù)制

–no-replication角色不能啟動(dòng)復(fù)制

-?, –help 顯示此幫助, 然后退出

聯(lián)接選項(xiàng):

-h, –host=HOSTNAM數(shù)據(jù)庫服務(wù)器所在機(jī)器的主機(jī)名或

套接字

目錄

-p, –port=PORT數(shù)據(jù)庫服務(wù)器

端口號(hào)

-U, –username=USERNAME 聯(lián)接用戶 (不是要?jiǎng)?chuàng)建的用戶名)

-w, -no-password永遠(yuǎn)不提示輸入口令

-W, –password強(qiáng)制提示輸入口令

臭蟲報(bào)告至.

C:\Documentsand Settings\Administrator>

方式3

在C:\Program Files\PostgreSQL\9.2\bin文件夾下有

可執(zhí)行文件

createuser.exe,我雙擊后,該文件執(zhí)行一閃就關(guān)閉,只好在dos中輸入cmd打開窗口,將該文件拖入窗口中,在輸入“ –U postgres –P Adiminisrator”然后回車,如下圖所示,即可創(chuàng)建數(shù)據(jù)庫用戶Administrator。但此時(shí)該用戶不具有創(chuàng)建database的能力,可以通過pgAdmin III查看。

psql的用法可以通過在dos下輸入psql –help查看,如下圖所示。

MicrosoftWindows XP

(C) 版權(quán)所有Microsoft Corp.

C:\Documentsand Settings\Administrator>psql –help

psql是PostgreSQL 的交互式客戶端工具。

使用方法:

psql … >

通用選項(xiàng):

-c,–command=命令執(zhí)行單一命令(SQL或內(nèi)部指令)然后結(jié)束

-d, –dbname=數(shù)據(jù)庫名稱 指定要連接的數(shù)據(jù)庫 (缺?。骸盇dministrator”)

-f, –file=文件名 從文件中執(zhí)行命令然后退出

-l, –list列出所有可用的數(shù)據(jù)庫,然后退出

-v, –set=, –variable=名稱=值

為psql變量(名稱)設(shè)定值

-V, –version輸出版本信息, 然后退出

-X, –no-psqlrc不讀取啟動(dòng)文檔(~/.psqlrc)

-1 (“one”), –single-transaction

作為一個(gè)單一事務(wù)來執(zhí)行命令文件

-?, –help 顯示此幫助, 然后退出

輸入和輸出選項(xiàng):

-a, –echo-all顯示所有來自于腳本的輸入

-e, –echo-queries 顯示發(fā)送給服務(wù)器的命令

-E, –echo-hidden顯示內(nèi)部命令產(chǎn)生的查詢

-L, –log-file=文件名 將會(huì)話日志寫入文件

-n, –no-readline禁用增強(qiáng)

命令行

編輯功能(readline)

-o, –output=FILENAME 將查詢結(jié)果寫入文件(或 |管道)

-q, –quiet以沉默模式運(yùn)行(不顯示消息,只有查詢結(jié)果)

-s, –single-step單步模式 (確認(rèn)每個(gè)查詢)

-S, –single-line單行模式 (一行就是一條 SQL 命令)

輸出格式選項(xiàng) :

-A, –no-align使用非對(duì)齊表格輸出模式

-F, –field-separator=

字符串

設(shè)字段

分隔符

(缺省:”|”)

-H, –htmlHTML 表格輸出模式

-P, –pset=變量 設(shè)置將變量打印到參數(shù)的選項(xiàng)(查閱 \pset 命令)

-R, –record-separator=字符串

設(shè)定記錄分隔符(缺?。簱Q行符號(hào))

-t, –tuples-only 只打印記錄i

-T, –table-attr=文本 設(shè)定 HTML 表格標(biāo)記屬性(例如,寬度,邊界)

-x, –expanded打開擴(kuò)展表格輸出

-z, –field-separator-zero

設(shè)置字段分隔符為字節(jié)0

-0, –record-separator-zero

設(shè)置記錄分隔符為字節(jié)0

聯(lián)接選項(xiàng):

-h, –host=主機(jī)名數(shù)據(jù)庫服務(wù)器主機(jī)或socket目錄(缺省:”本地接口”)

-p, –port=端口數(shù)據(jù)庫服務(wù)器的端口(缺?。骸?432″)

-U, –username=用戶名 指定數(shù)據(jù)庫用戶名(缺?。骸盇dministrator”)

-w, –no-password永遠(yuǎn)不提示輸入口令

-W, –password強(qiáng)制口令提示 (自動(dòng))

更多信息,請(qǐng)?jiān)趐sql中輸入”\?”(用于內(nèi)部指令)或者”\help”(用于SQL命令),

或者參考PostgreSQL文檔中的psql章節(jié).

臭蟲報(bào)告至.

關(guān)于PG數(shù)據(jù)庫外連接的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都服務(wù)器托管選創(chuàng)新互聯(lián),先上架開通再付費(fèi)。
創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)-網(wǎng)站建設(shè),軟件開發(fā)老牌服務(wù)商!微信小程序開發(fā),APP開發(fā),網(wǎng)站制作,網(wǎng)站營銷推廣服務(wù)眾多企業(yè)。電話:028-86922220


文章題目:了解PG數(shù)據(jù)庫的外連接實(shí)現(xiàn)方法 (PG數(shù)據(jù)庫外連接)
分享地址:http://m.5511xx.com/article/dpjscjj.html