1. 程式人生 > 其它 >MySQL常用SQL語句(持續更新中。。。)

MySQL常用SQL語句(持續更新中。。。)

技術標籤:mysql基礎mysql資料庫

1、新增語句
INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN );

2、MySQL IFNULL函式

select IFNULL(expression_1,expression_2) from table;

SQL

如果expression_1不為NULL,則IFNULL函式返回expression_1; 否則返回expression_2的結果。

3、select語句

select count(*) into v_count from dual;
這條語句的意思是查詢dual表的所有記錄數,將查詢結果存入v_count變數中,也就是給變數設值的用法
select user_id, account, user_status, department.department_name 
from user,department where user.state = 1

select
user_id, account, user_status, department.department_name
from user,department
where user.state = 1

4、複製表中資料,同時在複製的資料中新增一行,把這些資料放在一個表中

INSERT INTO demo(`name`, `age`) SELECT `name`, 1489 FROM demo WHERE name = '啊發發';

執行前如下

執行後如下

INSERT INTO demo(`name`, `age`) SELECT `name`, `1489` FROM demo WHERE name = '啊發發';

樓上SQL是不對的,因為加了`1489`就是代表查該表中的名為1489的列,可是我們沒有這一列

5、在表中插入資料

insert into test selecct 1,“Tom”;

6、更新語句

update friends set `state` = 1where friend_id = (select user_id from user where account = 'jl') or owner_id = (select user_id from user where account = 'jl');



7、修改表的編碼方式:

ALTER TABLEtestDEFAULT CHARACTER SET utf8;
該命令用於將表test的編碼方式改為utf8;

修改欄位的編碼方式:

ALTER TABLEtestCHANGEnamenameVARCHAR(36) CHARACTER SET utf8 NOT NULL; 
該命令用於將表test中name欄位的編碼方式改為utf8

小筆記:

SQL執行順序 F-W-G-S-H-O

第一步: 執行FROM
第二步: WHERE條件過濾T
第三步: GROUP BY 分組
第四步: 執行SELECT投影列
第五步:HAVING條件過濾
第六步: 執行ORDER BY 排序