記錄MYSQL常用但是要用的時候都要另外google的語法
查詢是否有重複的資料
SELECT * FROM {table_name} HAVING COUNT(*) > 1;
新增欄位
ALTER TABLE {table_name} ADD [column_name] VARCHAR(255) NULL DEFAULT '' AFTER [another_column_name] COMMENT '';
子查詢
SELECT *
FROM {table_name1}
WHERE [column_name1] IN
(
SELECT [column_name] FROM {table_name2}
);
建立索引
CREATE [UNIQUE] INDEX [column_name] ON {table_name} ([column_name]);
用root帳號登入
mysql -u root -p <密碼>
mysql -u root -p <密碼>
新增User
CREATE USER '<帳號>'@'localhost' IDENTIFIED BY '<密碼>';
CREATE USER '<帳號>'@'localhost' IDENTIFIED BY '<密碼>';
設定帳號最高權限
GRANT ALL PRIVILEGES ON *.* TO 'account'@'localhost';
設定帳號存取my_db權限
GRANT ALL PRIVILEGES ON my_db.* TO 'account'@'localhost';
my_db設定CRUD權限
GRANT SELECT, INSERT, UPDATE, DELETE ON my_db.* TO 'account'@'localhost';
移除使用者權限
REVOKE ALL PRIVILEGES ON my_db.* FROM 'account'@'localhost';
重新載入權限
FLUSH PRIVILEGES;
刪除使用者
drop user '<account>'@'host';
備份資料表
mysqldump -u[username] -p[password] [database] {[table]} > [filepath]/[filename]
在linux一行指令下SQL語法
#-s 是靜默模式的標誌,因此 shell 的輸出較少。
#-N 防止從結果中輸出列名。
#-e 表示應該執行 -e 標誌後面的語句,然後退出 shell。
mysql -u[username] -p[password] [database] -sNe "[SQL語法]"