下面是我總結的一些基礎的sql知識,主要是為了以后更好的查閱和幫助其他初學的人,同時記錄自己的成長,還寫了一點稍有
難度的sql面試題級別的題目,好了廢話不多說,見真題。。。
#創建數據庫CREATE DATABASE mytest CHARACTER SET gbk#刪除數據庫DROP DATABASE mytest表的操作#創建表(create table 表名(columns))CREATE TABLE students(id INT PRIMARY KEY,NAME CHAR(10) NOT NULL,sex CHAR(4) NOT NULL);#刪除表(drop table 表名)DROP TABLE students#在表格中插入數據(insert into 表名(屬性) values(對應的值))INSERT INTO students(id,NAME,sex) VALUES(1,"張三","男")#更新表格數據(update 表名 set 鍵=值,鍵=值 where 條件)中間要用“,”隔開,其他的無效 set只需寫一個UPDATE students SET id=2 , NAME="a" WHERE id=1#刪除表中數據(delete from 表名 where 條件)DELETE FROM students WHERE id=0#查看表中數據(select 查詢的東西 from 表名 where 條件)SELECT * FROM students WHERE id=1SELECT * FROM students ORDER BY age DESC(order by升序,order by 列名 desc降序)列#添加列(alter table 表名 add 列名 字段類型)ALTER TABLE students ADD tel CHAR(20)ALTER TABLE students ADD address CHAR(50) AFTER sex#刪除列(alter table 表名 drop 列名)ALTER TABLE students DROP address#修改列屬性(alter table 表名 change 需要修改的列名 修改后的列名 新列名字段類型)ALTER TABLE stu CHANGE telphone tel CHAR(20) DEFAULT "-"ALTER TABLE students CHANGE telALTER TABLE students RENAME stu簡單函數SELECT SUM(age) AS "總年齡" FROM studentsSELECT AVG(age) AS "平均年齡" FROM studentsSELECT MAX(age) AS "最大年齡" FROM studentsSELECT COUNT(id) AS "人數" FROM students(統計人數選擇主鍵不然可為空的列會影響結果)分組表內容:2005-05-09 勝2005-05-09 勝2005-05-09 負2005-05-09 負2005-05-10 勝2005-05-10 負2005-05-10 負 如果要生成下列結果, 該如何寫sql語句? 勝 負2005-05-09 2 22005-05-10 1 2SELECT DATA AS " ",SUM(result='勝') AS "勝" ,SUM(result='負') AS "負" FROM test1 GROUP BY DATA Case when(case 屬性=“” then “” end) 寫出由table1.table2得到table3的sql語句 SELECT t1.部門dep,SUM(CASE WHEN 月份mon='一月份' THEN 業績yj ELSE NULL END) AS '一月份',SUM(CASE WHEN 月份mon='二月份' THEN 業績yj ELSE NULL END) AS '二月份',SUM(CASE WHEN 月份mon='三月份' THEN 業績yj ELSE NULL END) AS '三月份' FROM table1 t1 LEFT JOIN table2 t2 ON t1.部門dep=t2.部門dep GROUP BY 部門dep左連接與右連接(left join 表名 on 連接語句)Left join與right join區別就是:左連接是以主表為主,顯示所有內容,若連接的表沒有與它對應的值則不顯示或顯示為null,右連接同理。內連接用一條SQL語句查詢出每門課都大于80分的學生姓名(表名為score) Select distinct(去重) name from score where name not in( Select name from score where fenshu<=80; );Union all、union(下分別為t1.t1)SELECT * FROM t1 UNION ALL SELECT * FROM t2 (不去除重復)===》t3SELECT * FROM t1 UNION SELECT * FROM t2 (去除重復)=====>t4(上分別為t3.t4)
以上所述是小編給大家介紹的Mysql表,列,庫增刪改查問題小結,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
新聞熱點
疑難解答