SELECT
select * from product A join product_details B on A.id=B.id
select * from product A left join product_details B on A.id=B.id
第一個滿足條件才列出,第二個不滿足條件的B字段以null代替
drop與truncate/delete
drop 刪除數據庫或數據表(表結構,屬性和索引也會刪除)
truncate /delete 刪除表中數據(僅數據,不刪除表)
字段類型
BOLD/TEXT 不能設置默認值
授予某個用戶所用權限,包括修改權限的權限
grant all privileges on \*.\* to '${userName}'@'%' with grant option;
模糊查詢一個數據庫下的數據表
show tables like '%關鍵字%'
查看某個用戶的權限,如果只是show grants就顯示當前用戶的權限
show grants for '${userName}'@'%'\G;
在命令最後加上\G可以按列顯示結果
查看包含char的變量的當前會話值(session可以忽略)
show session variables like '%char%';
查看character_set_client的全局值(可能與當前會話值不一樣)
show global variables like 'character_set_client';
查看當前會話執行insert語句的次數(global爲自mysql啓動以來全局執行insert語句的次數
show session status like 'com_insert'
show global status like 'com_insert'
查看當前連接的用戶以及執行的MySQL(會影響性能,不要在高峯期使用)
show full processlist\G;
Binlog,Relay Log是什麼?
- Binlog是開發執行的SQL語句按照提交的先後順序子啊MySQL內部生成的日誌
- Relay log是通過異步複製Master中的Binlog,並生成Slave的執行日誌。也是按照SQL語句提交順序存儲
避免出現大事務,如果夾雜RPC的事務,還可能產生主從讀數據不一致的情況
text無需指定默認值
decimal(m,n)m是整數位和小數位的個數,n是小數位數,默認爲decimal(10,0)
主鍵一般用bigint