当前位置:网站首页>SQL language
SQL language
2022-07-04 13:27:00 【Game programming】
SQL Language
elements of grammar
notes
# Use '#' notes -- Use '--' notes /* Multiline comment */Create use database
CREATE DATABASE db01;USE db01;Create table
CREATE TABLE table01 ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, col1 INT NOT NULL DEFAULT 1, col2 VARCHAR(45) NULL, col3 DATE NULL);Modify table
# Add new column ALTER TABLE table01 ADD col CHAR(20);# Modify the column ALTER TABLE Table name CHANGE Original field name new field name Field type constraint condition ALTER TABLE table01 CHANGE col col4 CHAR(32) NOT NULL DEFAULT 'xxx';# Delete column ALTER TABLE table01 DROP COLUMN col4;# Delete table DROP TABLE table01;Additions and deletions
# Add data INSERT INTO table01(col1, col2)VALUES(val1, val2);# Table data migration CREATE TABLE newtable ASSELECT * FROM table01;# to update UPDATE table01SET col = valWHERE Conditions ;# Delete DELETE FROM table01WHERE Conditions ;Inquire about
Basics
# duplicate removal SELECT DISTINCT * FROM table01;# Limit return SELECT * FROM table01 LIMIT 5, 2; # from 5 Start ( barring 5) Return two rows of data , namely 6,7# Sort ASC Ascending ,DESC Descending SELECT * FROM table01ORDER BY col1 DESC, col2 ASC;# Screening SELECT * FROM table01 WHERE Conditions ;Calculated field
| Letter Count | say bright |
|---|---|
| AVG() | Returns the average of a column |
| COUNT() | Returns the number of rows in a column |
| MAX() | Returns the maximum value of a column |
| MIN() | Returns the minimum value of a column |
| SUM() | Returns the sum of values in a column |
# give an example : Calculate the weight removed col1 The mean value of the column is named avg_colSELECT AVG(DISTINCT col1) AS avg_colFROM table01;Text processing
have access to LIKE + Regular expressions Filter text
SELECT *FROM table01WHERE col1 LIKE '[^AB]%'; -- Don't to A and B Any text at the beginning You can also use some functions for text processing :
| function | explain |
|---|---|
| LEFT() | The character on the left |
| RIGHT() | The character on the right |
| LOWER() | Convert to lowercase characters |
| UPPER() | Convert to uppercase characters |
| LTRIM() | Remove the space on the left |
| RTRIM() | Remove the space on the right |
| LENGTH() | length |
| SOUNDEX() | Convert a string into an alphanumeric pattern that describes its phonetic representation |
grouping
Grouping is to put rows with the same data value in the same group . You can use the summary function to process the same grouped data .
WHERE Filter line ,HAVING Filter grouping , Row filtering should precede group filtering .
SELECT col1, COUNT(*) AS numFROM table01WHERE col1 > 2GROUP BY col1HAVING num >= 2;We also need to pay attention to the following points
- GROUP BY Clause appears in WHERE After Clause ,ORDER BY Before clause ;
In addition to summary fields ,SELECT Every field in the statement must be in GROUP BY Given in Clause ;
NULL Your guild is divided into separate groups ;
majority SQL Implementation does not support GROUP BY Columns have variable length data types .
Subquery
Only one field of data can be returned in the subquery . The results of subqueries can be used as WHRER Filter condition of statement :
SELECT *FROM table01WHERE col1 IN (SELECT col1 FROM table02);Link query
Join is used to join multiple tables , Use JOIN keyword , And conditional statements use ON instead of WHERE.
Equivalent connection :
SELECT A.value, B.valueFROM tablea AS A INNER JOIN tableb AS BON A.key = B.key;It can also be used indefinitely INNER JOIN, Instead, use normal queries and in WHERE Join the columns to be joined in the two tables by equivalent method .
SELECT A.value, B.valueFROM tablea AS A, tableb AS BWHERE A.key = B.key; Natural join :
Natural join is to join columns with the same name through equivalence test , Columns with the same name can have more than one .
SELECT A.value, B.valueFROM tablea AS A NATURAL JOIN tableb AS B; External connection :
It is divided into left outer connection , Right outer connection and all outer connection , The left outer join is to keep the unrelated rows in the left table , The right outer connection is the same .
SELECT A.value, B.valueFROM tablea AS A LEFT OUTER JOIN tableb as bON A.col1 = B.col1;Combination query
Use UNION To combine two queries , If the first query returns M That's ok , The second query returns N That's ok , The result of the combined query is generally M+N That's ok . Each query must contain the same columns 、 Expressions and aggregation functions .
By default, the same line will be removed , If you need to keep the same company , Use UNION ALL.
SELECT *FROM table01WHERE col1 = 1UNIONSELECT *FROM table01WHERE col1 =2;Use view query
View is a virtual table , It doesn't contain data itself , It can't be indexed . The operation on the view is the same as that on the normal table .
Here is a simple view creation :
CREATE VIEW myview ASSELECT sentence ;Rights management
stay mysql in , The account information is saved in mysql In this database
USE mysql;SELECT * FROM user;Account operation
# Create an account CREATE USER myuser IDENTIFIED BY ' password ';# Change user name RENAME myuser TO newname;# Delete user DROP USER newname;# View permissions SHOW GRANTS FOR myuser;# to grant authorization GRANT SELECT, INSERT ON mydatabase.* TO myuser;# Delete permission REVOKE SELECT, INSERT ON mydatabase.* FROM myuser;# Change password SET PASSWROD FOR myuser = Password('new_password');author :S++
Game programming , A game development favorite ~
If the picture is not displayed for a long time , Please use Chrome Kernel browser .
边栏推荐
- Meituan Ali's Application Practice on multimodal recall
- 2022年中国移动阅读市场年度综合分析
- Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation
- "Pre training weekly" issue 52: shielding visual pre training and goal-oriented dialogue
- Golang sets the small details of goproxy proxy proxy, which is applicable to go module download timeout and Alibaba cloud image go module download timeout
- 七、软件包管理
- n++也不靠谱
- CANN算子:利用迭代器高效实现Tensor数据切割分块处理
- Deploy halo blog with pagoda
- 8个扩展子包!RecBole推出2.0!
猜你喜欢

众昂矿业:为保障萤石足量供应,开源节流势在必行

聊聊支付流程的设计与实现逻辑

Detailed explanation of mt4api documentary and foreign exchange API documentary interfaces

Solution: how to delete the information of Jack in two tables with delete in one statement in Oracle

面试官:Redis 过期删除策略和内存淘汰策略有什么区别?

n++也不靠谱

从0到1建设智能灰度数据体系:以vivo游戏中心为例

CTF竞赛题解之stm32逆向入门

Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation

runc hang 导致 Kubernetes 节点 NotReady
随机推荐
Xue Jing, director of insight technology solutions: Federal learning helps secure the flow of data elements
Using nsproxy to forward messages
[FAQ] summary of common causes and solutions of Huawei account service error 907135701
WPF double slider control and forced capture of mouse event focus
CVPR 2022 | TransFusion:用Transformer进行3D目标检测的激光雷达-相机融合
6 分钟看完 BGP 协议。
ArcGIS uses grid processing tools for image clipping
实战:fabric 用户证书吊销操作流程
Meituan Ali's Application Practice on multimodal recall
Optional values and functions of the itemized contenttype parameter in the request header
二分查找的简单理解
游戏启动后提示安装HMS Core,点击取消,未再次提示安装HMS Core(初始化失败返回907135003)
Practice: fabric user certificate revocation operation process
MDK在头文件中使用预编译器时,#ifdef 无效的问题
Excuse me, have you encountered this situation? CDC 1.4 cannot use timestamp when connecting to MySQL 5.7
洞见科技解决方案总监薛婧:联邦学习助力数据要素安全流通
SQL语言
runc hang 导致 Kubernetes 节点 NotReady
Comparative study of the gods in the twilight Era
Go zero micro service practical series (IX. ultimate optimization of seckill performance)