A. 帆軟怎麼在公式裡面引用數據列
一、資料庫如何工作
1、什麼是資料庫
資料庫是用來進行數據存儲和管理的容器。
產品在使用過程中發生的行為和業務數據都存儲在資料庫中。
資料庫運行在伺服器上,屬於後端的一部分
服務端處理業務邏輯,然後調用資料庫進行數據操作
2、資料庫分類
關系型資料庫:mysql、sql Server、oracle等
非關系型資料庫:mongoDB、couchDB等
不同數據廠商提供的資料庫基礎能力是類似的,但是使用場景和處理能力有差別,比如銀行會用Oracle,支持大規模系統的資料庫,安全性高。類似不同空調廠商,空調都可以製冷制熱,但是能耗價格有差別。
3、資料庫如何工作的
資料庫工作原理:
被服務端調用,進行數據增刪改查
服務端通過SQL語句操作資料庫,SQL語句需要工程師寫代碼實現
資料庫運行在伺服器上,數據存儲在伺服器硬碟中
二、資料庫表和關系結構
1、實體關系結構
反映現實世界中實體本身和實體之間的關系結構,實體之間的關系可以是1對1、1對多、多對多。
例如:
實體A是父親,有姓名、年齡、職業等屬性。
實體B是孩子,有姓名、年齡、學歷等屬性。
一個父親實體A可以對應多個孩子實體B,即1對多。
2、資料庫表
資料庫中的表對應客觀世界中的一個實體,表的名字就是實體名,表的欄位就是實體屬性。
3、資料庫關系結構
反映現實世界中實體本身和實體之間的關系結構,實體之間的關系可以是1對1、1對多、多對多。
表與表之間可以建立關聯關系,對應不同實體之間的關系。
訂單與商品表的關系:1對多(一個訂單可以有多個商品)
商品表與店鋪表的關系:多對多(一個店鋪可以賣多個商品,一個商品可以在多個店鋪賣)
用戶表與戶口表的關系:1對1(一個人只有一個戶口)
4、表與表之間通過主鍵相互關聯
主鍵:每個表中唯一標識一條數據的欄位
例如:商品表的主鍵是proctId,訂單表的主鍵是orderId
三、資料庫欄位和欄位類型
1、數據表欄位
欄位對應實體對象中的屬性,在資料庫表結構中,欄位是基本組成要素。
例如User表欄位:User、username、sex、age等
欄位可以有無限多個,資料庫表欄位命名通常用英文,可以用下劃線區分。例如user_id,user_name
2、數據表的欄位類型
每一個欄位都對應一種欄位類型,用來表示欄位存儲的值屬於哪種類型。
常用欄位類型有整數型、字元型、日期型。
例如User表欄位類型:userId是字元型,username是字元型,sex是字元型,age是整數型。
例如Order表欄位類型:time是日期型。
工程師寫代碼存儲數據時要根據表的欄位的數據類型約束來做相應改變。
3、欄位和欄位類型的使用
欄位映射的是客觀世界的實體屬性,每個屬性都需要對應的數據類型。
欄位和欄位類型是數據結構的基礎,介面里的參數和值對應的都是資料庫里的欄位和欄位類型。
工程師都是基於欄位和欄位類型來定義介面(API)。
產品經理對資料庫表、欄位、欄位類型有了了解後,可以更好的理解介面的設計和功能的邏輯。
四、資料庫操作語言SQL
1、資料庫操作語言——SQL
SQL全稱是結構化查詢語言,是一種用來操作關系型資料庫的編程語言,可以理解為對資料庫的操作指令。
SQL語句被嵌入在服務端程序中,後端工程師除了編寫業務邏輯代碼外,還需要對資料庫進行操作。
2、資料庫如何呈現
客戶端發起請求,服務端處理,調用資料庫進行查詢,通過介面將數據返回客戶端並展示。當數據出現異常時,產品經理要知道問題出在哪裡,是數據取的時候出現問題還是數據返回的時候出現問題。在定位產品數據問題時更有針對性。
3、常用SQL語句
表的建立、新增、查詢、修改、刪除。
建表:create table
新增:insert into
查詢:select
修改:update
刪除:delete from
五、資料庫表索引
1、什麼是資料庫索引
索引是基於資料庫表某一列或幾列建立的目錄結構,通過索引能極大提高數據的查詢效率。
例如基於user表建立userid的索引結構,能快速定位查詢到某一具體數據。
傳統方法使用select * from user where userid = '10000' 查詢第10000條數據,按行遍歷。
通過userid的索引可以快速定位到userid=10000的數據項,提高查詢效率。
2、資料庫索引的缺點
索引單獨維護,需要耗費空間
每次更新數據表時需要同步更新索引表
建立和維護索引時耗時較多,數據量增加時,耗時也會增加