mysql使用小技巧

來源:互聯網
上載者:User

標籤:

1、MySQL中有許多很實用的函數,好好利用它們可以省去很多時間:

group_concat() 將取到的值用逗號串連,可以這麼用:

select group_concat(distinct id) from tablename;

得到的結果類似為: 1,2,3,4,5

unix_timestamp(), to_days(), now() 這三個函數都是與日期相關的函數,主要用於處理mysql中timestamp類似的資料,可以用於與unix時間戳記轉換以及比較

select now(), unix_timestamp(now()), to_days(now());

inet_aton(), inet_ntoa() 這個就不多說了,ip網路位元組序列轉換函式

select inet_aton(‘127.0.0.1’), inet_ntoa(2130706433);

2、在操作資料庫中很多時候可能會出現字元亂碼的情況,這種情況主要是因為資料表使用的編碼和資料庫預設的編碼不一致所造成的,可以利用以下語句改變編碼:

set names utf8

3、在項目開發中,有時會遇到用戶端添加emoji表情,如何儲存到mysql資料庫呢?
方法:
UTF-8編碼有可能是兩個、三個、四個位元組。Emoji表情是4個位元組,而Mysql的utf8編碼最多3個位元組,所以資料插不進去。解決方案就是:將Mysql的編碼從utf8轉換成utf8mb4
(1).修改my.cnf
[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4
修改後重啟Mysql
(2).以root身份登入Mysql,修改環境變數,將
character_set_client,character_set_connection,character_set_database,character_set_results,character_set_server 都修改成utf8mb4
(3).將已經建好的表也轉換成utf8mb4
alter table TABLE_NAME convert to character set utf8mb4 collate utf8mb4_bin; (將TABLE_NAME替換成你的表名)
4、用以下語句查看資料表相關資訊:

show create table your_table;

mysql使用小技巧

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.