日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQLite | Select 语句

發布時間:2025/3/15 数据库 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQLite | Select 语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1. Select
    • 1.1 SELECT
    • 1.2 alias
    • 1.3 內置函數
    • 1.4 文字拼接
  • 參考資料

1. Select

本文將使用 rexon_metals.db 數據庫,其中包含了 CUSTOMER,CUSTOMER_ORDER 以及 PRODUCT 三張表。

  • 使用Jupyter Notebook 運行 SQL 語句需安裝 ipython-sql

  • %sql 以及 %%sql 為在 Notebook 中運行 SQL 語句,在 SQLite 命令行或 SQLite Stiduo 中不需要 %sql 或 %%sql

載入 SQL 以及連接 SQLite:

%load_ext sql %sql sqlite:///DataBase/rexon_metals.db 'Connected: @DataBase/rexon_metals.db'

1.1 SELECT

使用 * 選取 CUSTOMER 表中的所有列:

%sql select * from CUSTOMER; * sqlite:///DataBase/rexon_metals.db Done. CUSTOMER_IDNAMEREGIONSTREET_ADDRESSCITYSTATEZIP
1LITE IndustrialSouthwest729 Ravine WayIrvingTX75014
2Rex Tooling IncSouthwest6129 Collie BlvdDallasTX75201
3Re-Barre ConstructionSouthwest9043 Windy DrIrvingTX75032
4Prairie ConstructionSouthwest264 Long RdMooreOK62104
5Marsh Lane Metal WorksSoutheast9143 Marsh LnAvondaleLA79782

也可以指定選取某幾列,如 CUSTOMER_ID, NAME

%sql select CUSTOMER_ID, NAME from CUSTOMER; * sqlite:///DataBase/rexon_metals.db Done. CUSTOMER_IDNAME
1LITE Industrial
2Rex Tooling Inc
3Re-Barre Construction
4Prairie Construction
5Marsh Lane Metal Works

1.2 alias

SELECT 不僅可以簡單的選取某幾列數據,還可以對它們進行運算,如利用 PRODUCT 表中的 PRICE 計算相應的稅后價格 TAXED_PRICE:

%%sql select PRODUCT_ID, DESCRIPTION, PRICE, PRICE * 1.07 as TAXED_PRICE from PRODUCT; * sqlite:///DataBase/rexon_metals.db Done. PRODUCT_IDDESCRIPTIONPRICETAXED_PRICE
1Copper7.518.0357
2Aluminum2.582.7606
3Silver1516.05
4Steel12.3113.171700000000001
5Bronze44.28
6Duralumin7.68.132
7Solder14.1615.151200000000001
8Stellite13.3114.241700000000002
9Brass4.755.0825000000000005
  • 當在 SQL 中對任何東西賦予變量名時(不論是alias, a column name, a table name 或者其他 entity),都應該使用下劃線 (_) 作為占位符,如果使用空格的話,將會出現錯誤。

我們可以使用 別名(alias)對表達式賦予名字,也可以在查詢中用 alias 做為已存在的列的列名。比如將 UNTAXED_PRICE 作為 PRICE 的 alias,但這并不會改變表中的列名,而是在執行 SELECT 語句時賦予了一個新的名字:

%%sql select PRODUCT_ID, DESCRIPTION, PRICE AS UNTAXED_PRICE, PRICE * 1.07 as TAXED_PRICE from PRODUCT; * sqlite:///DataBase/rexon_metals.db Done. PRODUCT_IDDESCRIPTIONUNTAXED_PRICETAXED_PRICE
1Copper7.518.0357
2Aluminum2.582.7606
3Silver1516.05
4Steel12.3113.171700000000001
5Bronze44.28
6Duralumin7.68.132
7Solder14.1615.151200000000001
8Stellite13.3114.241700000000002
9Brass4.755.0825000000000005

1.3 內置函數

每一個數據庫平臺都有內置函數(built-in-functions),SQLite 提供了 round() 函數來對數據進行四舍五入,如將 TAXED_PRICE 保留兩位小數:

%%sql select PRODUCT_ID, DESCRIPTION, PRICE AS UNTAXED_PRICE, round(PRICE * 1.07, 2) as TAXED_PRICE from PRODUCT; * sqlite:///DataBase/rexon_metals.db Done. PRODUCT_IDDESCRIPTIONUNTAXED_PRICETAXED_PRICE
1Copper7.518.04
2Aluminum2.582.76
3Silver1516.05
4Steel12.3113.17
5Bronze44.28
6Duralumin7.68.13
7Solder14.1615.15
8Stellite13.3114.24
9Brass4.755.08
圖1 SQLite 內置函數

1.4 文字拼接

表達式不一定只對數字類型的數據起作用,也可以用與文字型(text)或者其他類型的數據。對于文字型數據,一個有用的命令就是 concatenation(聯合),可以將兩段數據聯合到一起。

在 SQLite 中,這個聯合操作符為 (||),可以將兩邊的數據聯合到一起;舉個例子,可以將 CUSTOMER 表中的 CITY 和 STATE 聯合為一個 LOCAYION:

  • Concatenation 對任何的數據類型都適用(numbers, dates,…)
  • 很多數據庫平臺使用 (||) 來進行拼接,但 MySQL 使用 CONCAT() 函數
%%sql select NAME, CITY ||','|| STATE as LOCATION from CUSTOMER; * sqlite:///DataBase/rexon_metals.db Done. NAMELOCATION
LITE IndustrialIrving,TX
Rex Tooling IncDallas,TX
Re-Barre ConstructionIrving,TX
Prairie ConstructionMoore,OK
Marsh Lane Metal WorksAvondale,LA

也可以將幾個 fields 合成為一個單獨的 SHIP_ADDRESS (郵件地址):

%%sql select NAME, STREET_ADDRESS || ' ' || CITY || ',' || STATE || ' ' || ZIP as SHIP_ADDRESS from CUSTOMER; * sqlite:///DataBase/rexon_metals.db Done. NAMESHIP_ADDRESS
LITE Industrial729 Ravine Way Irving,TX 75014
Rex Tooling Inc6129 Collie Blvd Dallas,TX 75201
Re-Barre Construction9043 Windy Dr Irving,TX 75032
Prairie Construction264 Long Rd Moore,OK 62104
Marsh Lane Metal Works9143 Marsh Ln Avondale,LA 79782

參考資料

[1] Thomas Nield.Getting Started with SQL[M].US: O’Reilly, 2016: 19-28

相關文章:
SQL | 目錄
SQLite | SQLite 與 Pandas 比較篇之一
SQLite | Select 語句
SQLite | Where 子句
SQLite | Group by 與 Order by 子句
SQLite | CASE 子句
SQLite | Join 語句
SQLite | 數據庫設計與 Creat Table 語句
SQLite | Insert、Delete、Updata 與 Drop 語句

總結

以上是生活随笔為你收集整理的SQLite | Select 语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。