mysql是最基本的數據庫,對于非數據庫的開發人員來說,如何使用和查詢等基本操作是了解和應用masql的基礎,就mysql的操作作了一些實用的筆記:
SELECT VERSION(), CURRENT_DATE; #查版本
SELECT SIN(PI()/4), (4+1)*5;#簡易計算器
SHOW DATABASES;
SELECT DATABASE();
SELECT USER()
CREATE DATABASE hfxtest;#創建數據庫
USE hfxtest;
SHOW TABLES;
DROP TABLES test1#刪除表
#創建表
CREATE TABLE if not exists test1(
? a INT(11) NOT NULL DEFAULT 0,
? b INT(11) DEFAULT 100,
? PRIMARY KEY (a)
)ENGINE=INNODB DEFAULT CHARSET=gbk;
#創建結束
alter table hfxtest rename as hfxtest1; #對表重新命名
create unique index ind_id on table1 (id);//建立唯一性索引
drop index idx_id on table1;
#分區
PARTITION BY RANGE (a) (
??? PARTITION p0 VALUES LESS THAN (5),
??? PARTITION p1 VALUES LESS THAN (10),
??? PARTITION p2 VALUES LESS THAN (15)
);
#分區結束
DESCRIBE test1;#描述表信息
ALTER TABLE test1 ADD c INT(10);
ALTER TABLE test1 DROP c;
ALTER TABLE test1 ADD c DATE NOT NULL;
INSERT INTO test1 (a,b) VALUES (1,2);
INSERT INTO test1 (a,b) VALUES (4,5);
INSERT INTO test1 (a,b) VALUES (3,7);
#更新
UPDATE test1 SET b = 200 WHERE a = 3;
UPDATE test1 SET b = 200 WHERE a = 2;
#查詢
SELECT * FROM test1;
SELECT T1.a,(T1.b+T2.c) FROM test1 AS T1 INNER JOIN test2 AS T2 ON T1.a = T2.a
#刪除
DELETE FROM test2 WHERE a = 1
#控制流函數
SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;
SELECT IF(1<2,'yes ','no');
SELECT IF((SELECT b FROM test1 WHERE a=1)<0,'<0','>0');
SELECT IF(STRCMP('test','test1'),'no','yes');
#字符串處理函數
SELECT LOCATE('bar', 'foobarbar');#查位置
SELECT LOWER('QUADRATICALLY'); #大小寫轉換
SELECT LPAD('hi',4,'??');#-> '??hi'
SELECT LPAD('hi',1,'??');#-> 'h'
SELECT REPEAT('MySQL', 3);#重復字符串
SELECT REPLACE('www.mysql.com', 'w', 'Ww');#替換
SELECT REVERSE('abc');#逆序
SELECT RIGHT('foobarbar', 4);#從字符串str 開始,返回最右len 字符
SELECT RPAD('hi',5,'?');#-> 'hi???'
SELECT SUBSTRING('Quadratically',5);#-> 'ratically'
SELECT SUBSTRING('Quadratically',5,6);#-> 'ratica'?
SELECT SUBSTRING('Sakila', -3);#-> 'ila'???????
SELECT SUBSTRING('Sakila', -5, 3);# -> 'aki'
SELECT SUBSTRING('Sakila' FROM -4 FOR 2);#-> 'ki'
SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');#-> 'barxxx'
SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');# -> 'bar'
SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');#-> 'barx'
SELECT TRIM(LEADING 'ST' FROM 'ST60000.stk');#-> '60000.stk'
#通用操作
show processlist;列出每一筆聯機的信息。
show varlables;列出mysql的系統設定。
show tables from db_name;列出db_name中所有數據表;
show [full] columns from table_name;列出table_name中完整信息,如欄名、類型,包括字符集編碼。
show index from table_name; 列出table_name中所有的索引。
show table status;;列出當前數據庫中數據表的信息。
show table status from db_name;;列出當前db_name中數據表的信息。
alter table table_name engine innodb|myisam|memory ;更改表類型
explain table_name / describe table_name ; 列出table_name完整信息,如欄名、類型。
show create table table_name 顯示當前表的建表語句
alter table table_name add primary key (picid) ; 向表中增加一個主鍵
alter table table_name add column userid int after picid 修改表結構增加一個新的字段
alter table table_name character set gb2312 改變表的編碼
select user(); 顯示當前用戶。
select password(’root’); 顯示當前用戶密碼
select now(); 顯示當前日期
flush privileges 在不重啟的情況下刷新用戶權限
mysqld –default-character-set=gb2312 ;設置默認字符集為gb2312
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
