以下是我總結的一些基礎的sql知識,方便以後使用,需要的朋友參考可以參考下
下面是我總結的一些基礎的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=1 SELECT * 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 tel ALTER TABLE students RENAME stu 简单函数 SELECT SUM(age) AS "总年龄" FROM students SELECT AVG(age) AS "平均年龄" FROM students SELECT MAX(age) AS "最大年龄" FROM students SELECT 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 2 2005-05-10 1 2 SELECT 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 (不去除重复)===》t3 SELECT * FROM t1 UNION SELECT * FROM t2 (去除重复)=====>t4 (上分别为t3.t4)
以上是Mysql中關於表,列以及庫的增刪改查問題總結(收藏)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

MySQL通過異步、半同步和組複製三種模式處理數據複製。 1)異步複製性能高但可能丟失數據。 2)半同步複製提高數據安全性但增加延遲。 3)組複製支持多主複製和故障轉移,適用於高可用性需求。

EXPLAIN語句可用於分析和提升SQL查詢性能。 1.執行EXPLAIN語句查看查詢計劃。 2.分析輸出結果,關注訪問類型、索引使用情況和JOIN順序。 3.根據分析結果,創建或調整索引,優化JOIN操作,避免全表掃描,以提升查詢效率。

使用mysqldump進行邏輯備份和MySQLEnterpriseBackup進行熱備份是備份MySQL數據庫的有效方法。 1.使用mysqldump備份數據庫:mysqldump-uroot-pmydatabase>mydatabase_backup.sql。 2.使用MySQLEnterpriseBackup進行熱備份:mysqlbackup--user=root--password=password--backup-dir=/path/to/backupbackup。恢復時,使用相應的命

MySQL慢查詢的主要原因包括索引缺失或不當使用、查詢複雜度、數據量過大和硬件資源不足。優化建議包括:1.創建合適的索引;2.優化查詢語句;3.使用分錶分區技術;4.適當升級硬件。

MySQL視圖是基於SQL查詢結果的虛擬表,不存儲數據。 1)視圖簡化複雜查詢,2)增強數據安全性,3)維護數據一致性。視圖是數據庫中的存儲查詢,可像表一樣使用,但數據動態生成。

mysqldiffersfromothersqldialectsinsyntaxforlimit,自動啟動,弦樂範圍,子征服和表面上分析。 1)MySqluessLipslimit,whilesqlserverusestopopandoraclesrontersrontsrontsrontsronnum.2)

MySQL分區能提升性能和簡化維護。 1)通過按特定標準(如日期範圍)將大表分成小塊,2)物理上將數據分成獨立文件,3)查詢時MySQL可專注於相關分區,4)查詢優化器可跳過不相關分區,5)選擇合適的分區策略並定期維護是關鍵。

在MySQL中,如何授予和撤銷權限? 1.使用GRANT語句授予權限,如GRANTALLPRIVILEGESONdatabase_name.TO'username'@'host';2.使用REVOKE語句撤銷權限,如REVOKEALLPRIVILEGESONdatabase_name.FROM'username'@'host',確保及時溝通權限變更。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver CS6
視覺化網頁開發工具