当前位置:网站首页>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 .
边栏推荐
- jsonp
- Reinforcement learning - learning notes 1 | basic concepts
- Go zero micro service practical series (IX. ultimate optimization of seckill performance)
- A data person understands and deepens the domain model
- PostgreSQL 9.1 soaring Road
- Two dimensional code coding theory
- WPF双滑块控件以及强制捕获鼠标事件焦点
- Dgraph: large scale dynamic graph dataset
- Comparative study of the gods in the twilight Era
- 再说rsync+inotify实现数据的实时备份
猜你喜欢

CANN算子:利用迭代器高效实现Tensor数据切割分块处理

Meituan Ali's Application Practice on multimodal recall

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

Annual comprehensive analysis of China's mobile reading market in 2022

AI painting minimalist tutorial

Building intelligent gray-scale data system from 0 to 1: Taking vivo game center as an example
Efficient! Build FTP working environment with virtual users

CANN算子:利用迭代器高效实现Tensor数据切割分块处理

Oracle 被 Ventana Research 评为数字创新奖总冠军

Dry goods sorting! How about the development trend of ERP in the manufacturing industry? It's enough to read this article
随机推荐
Rsyslog配置及使用教程
Talk about the design and implementation logic of payment process
PostgreSQL 9.1 飞升之路
Apache服务器访问日志access.log设置
eclipse链接数据库中测试SQL语句删除出现SQL语句语法错误
Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation
Reading cognitive Awakening
【云原生 | Kubernetes篇】深入了解Ingress(十二)
二分查找的简单理解
2022年中国移动阅读市场年度综合分析
Personalized online cloud database hybrid optimization system | SIGMOD 2022 selected papers interpretation
Alibaba cloud award winning experience: build a highly available system with polardb-x
MySQL three-level distribution agent relationship storage
PostgreSQL 9.1 soaring Road
Interviewer: what is the difference between redis expiration deletion strategy and memory obsolescence strategy?
请问大佬们有遇到这个情况吗,cdc 1.4 连接MySQL 5.7 无法使用 timestamp
Building intelligent gray-scale data system from 0 to 1: Taking vivo game center as an example
求解:在oracle中如何用一条语句用delete删除两个表中jack的信息
从0到1建设智能灰度数据体系:以vivo游戏中心为例
爬虫练习题(一)