您好,登錄后才能下訂單哦!
這篇文章給大家介紹PostgreSQL命令如何使用,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
首先,輸入 psql
命令進入數據庫,然后用下面的命令創建一個表:
Create table groc (item varchar(20), comment varchar(10));
輸入如下命令在清單中加入商品:
insert into groc values ('milk', 'K');insert into groc values ('bananas', 'KW');
括號中有兩個信息(逗號隔開):前面是你需要買的東西,后面字母代表你要購買的地點以及哪些東西是你每周通常都要買的(W
)。
因為 psql
有歷史記錄,你可以按向上鍵在括號內編輯信息,而無需輸入商品的整行信息。
在輸入一小部分商品后,輸入下面命令來檢查前面的輸入內容。
Select * from groc order by comment; item | comment----------------+--------- ground coffee | H butter | K chips | K steak | K milk | K bananas | KW raisin bran | KW raclette | L goat cheese | L onion | P oranges | P potatoes | P spinach | PW broccoli | PW asparagus | PW cucumber | PW sugarsnap peas | PW salmon | S(18 rows)
此命令按 comment
列對結果進行排序,以便按購買地點對商品進行分組,從而使你的購物更加方便。
使用 W
來指明你每周要買的東西,當你要清除表單為下周的列表做準備時,你可以將每周的商品保留在購物清單上。輸入:
delete from groc where comment not like '%W';
注意,在 PostgreSQL 中 %
表示通配符(而非星號)。所以,要保存輸入內容,需要輸入:
delete from groc where item like 'goat%';
不能使用 item = 'goat%'
,這樣沒用。
在購物時,用以下命令輸出清單并打印或發送到你的手機:
\o groclist.txtselect * from groc order by comment;\o
最后一個命令 \o
后面沒有任何內容,將重置輸出到命令行。否則,所有的輸出會繼續輸出到你創建的雜貨店購物文件 groclist.txt
中。
這個逐項列表對于數據量小的表來說沒有問題,但是對于數據量大的表呢?幾年前,我幫 FreieFarbe.de 的團隊從 HLC 調色板中創建一個自由色的色樣冊。事實上,任何能想象到的打印色都可按色調、亮度、濃度(飽和度)來規定。最終結果是 HLC Color Atlas,下面是我們如何實現的。
該團隊向我發送了具有顏色規范的文件,因此我可以編寫可與 Scribus 配合使用的 Python 腳本,以輕松生成色樣冊。一個例子像這樣開始:
HLC, C, M, Y, KH010_L15_C010, 0.5, 49.1, 0.1, 84.5H010_L15_C020, 0.0, 79.7, 15.1, 78.9H010_L25_C010, 6.1, 38.3, 0.0, 72.5H010_L25_C020, 0.0, 61.8, 10.6, 67.9H010_L25_C030, 0.0, 79.5, 18.5, 62.7H010_L25_C040, 0.4, 94.2, 17.3, 56.5H010_L25_C050, 0.0, 100.0, 15.1, 50.6H010_L35_C010, 6.1, 32.1, 0.0, 61.8H010_L35_C020, 0.0, 51.7, 8.4, 57.5H010_L35_C030, 0.0, 68.5, 17.1, 52.5H010_L35_C040, 0.0, 81.2, 22.0, 46.2H010_L35_C050, 0.0, 91.9, 20.4, 39.3H010_L35_C060, 0.1, 100.0, 17.3, 31.5H010_L45_C010, 4.3, 27.4, 0.1, 51.3
這與原始數據相比,稍有修改,原始數據用制表符分隔。我將其轉換成 CSV 格式(用逗號分割值),我更喜歡其與 Python 一起使用(CSV 文也很有用,因為它可輕松導入到電子表格程序中)。
在每一行中,第一項是顏色名稱,其后是其 C、M、Y 和 K 顏色值。 該文件包含 1,793 種顏色,我想要一種分析信息的方法,以了解這些值的范圍。這就是 PostgreSQL 發揮作用的地方。我不想手動輸入所有數據 —— 我認為輸入過程中我不可能不出錯,而且令人頭痛。幸運的是,PostgreSQL 為此提供了一個命令。
首先用以下命令創建數據庫:
Create table hlc_cmyk (color varchar(40), c decimal, m decimal, y decimal, k decimal);
然后通過以下命令引入數據:
\copy hlc_cmyk from '/home/gregp/HLC_Atlas_CMYK_SampleData.csv' with (header, format CSV);
開頭有反斜杠,是因為使用純 copy
命令的權限僅限于 root 用戶和 Postgres 的超級用戶。在括號中,header
表示第一行包含標題,應忽略,CSV
表示文件格式為 CSV。請注意,在此方法中,顏色名稱不需要用括號括起來。
如果操作成功,會看到 COPY NNNN
,其中 N 表示插入到表中的行數。
最后,可以用下列命令查詢:
select * from hlc_cmyk; color | c | m | y | k ---------------+-------+-------+-------+------ H010_L15_C010 | 0.5 | 49.1 | 0.1 | 84.5 H010_L15_C020 | 0.0 | 79.7 | 15.1 | 78.9 H010_L25_C010 | 6.1 | 38.3 | 0.0 | 72.5 H010_L25_C020 | 0.0 | 61.8 | 10.6 | 67.9 H010_L25_C030 | 0.0 | 79.5 | 18.5 | 62.7 H010_L25_C040 | 0.4 | 94.2 | 17.3 | 56.5 H010_L25_C050 | 0.0 | 100.0 | 15.1 | 50.6 H010_L35_C010 | 6.1 | 32.1 | 0.0 | 61.8 H010_L35_C020 | 0.0 | 51.7 | 8.4 | 57.5 H010_L35_C030 | 0.0 | 68.5 | 17.1 | 52.5
所有的 1,793 行數據都是這樣的。回想起來,我不能說此查詢對于 HLC 和 Scribus 任務是絕對必要的,但是它減輕了我對該項目的一些擔憂。
為了生成 HLC 色譜,我使用 Scribus 為色板頁面中的 13,000 多種顏色自動創建了顏色圖表。
我可以使用 copy
命令輸出數據:
\copy hlc_cmyk to '/home/gregp/hlc_cmyk_backup.csv' with (header, format CSV);
我還可以使用 where
子句根據某些值來限制輸出。
例如,以下命令將僅發送以 H10
開頭的色調值。
\copy hlc_cmyk to '/home/gregp/hlc_cmyk_backup.csv' with (header, format CSV) where color like 'H10%';
我在此要提到的最后一個命令是 pg_dump
,它用于備份 PostgreSQL 數據庫,并在 psql
控制臺之外運行。 例如:
pg_dump gregp -t hlc_cmyk > hlc.outpg_dump gregp > dball.out
第一行是導出 hlc_cmyk
表及其結構。第二行將轉儲 gregp
數據庫中的所有表。這對于備份或傳輸數據庫或表非常有用。
要將數據庫或表傳輸到另一臺電腦(查看 PostgreSQL 入門那篇文章獲取詳細信息),首先在要轉入的電腦上創建一個數據庫,然后執行相反的操作。
psql -d gregp -f dball.out
關于PostgreSQL命令如何使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。