Tag Archives: int

Facebook 在 MySQL 裡存時間的型態

在 MySQL at Facebook 的這邊說明提到了,Facebook 內部是使用 INT UNSIGNED 儲存時間: Which gets us to the point that it is no different than storing INT (hello 2038?) or UNSIGNED INT (a bit later) or BIGINT (till the end of time) and possibly … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , , , , | Leave a comment

MySQL 裡搜尋 CHAR/VARCHAR (String) 欄位時要注意的事情

MySQL 表格欄位是 CHAR 或 VARCHAR 時,寫搜尋條件要記得使用 string 格式,而非數字。意思是,要避免這種 SQL query: SELECT * FROM foo WHERE `column_string` = 123456; 原因是即使 column_string 加上了 B-tree index,也無法利用這個 index 加速查詢。 原因是,除了最明確的 '123456' 會符合外,還有很多種 case 符合: mysql> SELECT 123456 = '0123456'; +--------------------+ | 123456 = '0123456' … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , | Leave a comment

MySQL 裡儲存時間的方式...

這應該是 MySQL 的 best practice 之一,不知道為什麼 Baron Schwartz 又拿出來講:「A simple rule for sane timestamps in MySQL」。 MySQL 內可以儲存「日期與時間」的資料型態是 DATETIME 與 TIMESTAMP 兩種,不過 DATETIME 沒有時區觀念,而 TIMESTAMP 只能是 UTC (GMT+0)。 相較於隔壁棚 PostgreSQL 的 Date/Time Types 就一種 TIMESTAMP,但支援 with timezone 與 without timezone … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , , | 4 Comments