Category: DB

MySQL 的 string type 和 storage size 關係

本文有錯請指正。 以下 storage size 指的是實際儲存的空間,不是用 select length() 拿出來的資訊。 In the following table, M represents the declared column length in characters for non-binary string types and bytes for binary string types. L represents the actual length in bytes of a given

Posted in DB

SQL Group By 可能發生的誤用

最近有個需求,要一些資料 Group 起來,不過後來測試發現會有欄位資料拿錯的情況,趕緊去請教公司的 DBA 大神之後,發現是我的 SQL 下錯了。 假設有一批水果資料,攤平之後是這樣: sn item attr1 attr2 attr3 created_date 1 蕃茄 1 2 3 2015-01-15 2 蘋果 1 1 1 2015-01-27 3 蘋果 2 3 4 2015-01-28 4 蘋果 3 3 3 2015-01-29 5 香蕉

Posted in DB

MySQL – Status for Insert Per Secound 計算每秒寫入次數

可以利用 MySQL 例如要取得多少個 insert/update/delete per second 可以用在 global status 裡面找到: show global status like “com_insert”; 當然也可以用 Com_delete, Com_update, Com_select …等等下去找 詳見:MySQL Server Status Variables

Posted in DB

MySQL unsigned INT 的問題 – 以噗浪為例

在 MySQL 開一個 INT 欄位的時候,有時候我們會把欄位屬性設定為 Unsigned ,這樣可以儲存更多的正整數。 以 Signed 為例,可以儲存 -2147483648 to 2147483647 而以 Unsigned 為例,可以儲存 0 to 4294967295 不過在操作這類欄位的時候,必須要小心,以避免刪過頭,反而變成補血補滿。

Posted in DB

MySQL 複製資料表筆記

要複製某個資料表,要先建立一個新的資料表,然後把原本的資料新增到剛建立的新資料表。 建立新資料表:CREATE TABLE new_table LIKE old_db.old_table; 複製資料:INSERT new_table SELECT * FROM old_db.old_table; 收工。

Posted in DB