목차
一、SQL语句分类
二、SQL语句应用案例
데이터 베이스 MySQL 튜토리얼 Mysql研究之SQL语言的设计与编写完全解析_MySQL

Mysql研究之SQL语言的设计与编写完全解析_MySQL

Jun 01, 2016 pm 01:02 PM
언어

一、SQL语句分类

数据定义语言(DDL):

用于定义和管理数据对象,包括数据库、数据表、视图、索引等。例如:CREATE、DROP、ALTER等语句。

数据操作语言(DML):【和表中的数据记录有关的语言】

用于操作数据库对象中所包含的数据。例如:INSERT、UPDATE、DELETE语句。

数据查询语言(DQL):

用于查询数据库对象中所包含的数据,能够进行单表查询、连接查询、嵌套查询,以及集合查询等各种复杂程度不同的数据库查询,并将数据返回到客户机中显示。例如:SELECT语句(占60%)。

数据控制语言(DCL):

是用来管理数据库的语言,包含管理权限及数据更改。例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。

二、SQL语句应用案例

1、DDL【可以按照以下格式写入一个文件,然后再粘贴到MySQL数据库中】

createtable if not exists cats (

idint not null auto_increment,

pidint not null default ’0′,

namevarchar(30) not null default ”,

desntext not null default ”,

primarykey(id),

indexname(name,pid)

);

createtable if not exists products(

idint not null auto_increment,

cidint not null default 0,

namevarchar(60) not null default ”,

pricedouble (7,2) not null default 0.00,

numint not null default 0,

desntext,

ptimeint not null default 0,

primarykey(id),

keypname(name,price)

);

2、DML

a)insert,插入表数据

insertinto 表名([字段列表])values(值列表),(值列表2),(值列表3),…,(值列表n);

特点:

1.如果在表名后没有给出字段列表,则值列表必须填充所有字段的值,必须按表中默认的顺序插入

2.所有需要写字段名的地方都不加单引号或双引号,但是建议所有值都要以字符形式使用

3.建议在插入数据时,最好给出字段列表,则值只要和字段列表一一对应即可,可以不按表中字段的顺序

b)update表名 set字段=’值‘[,字段2='值2',...,字段n='值n'][条件]#条件指定需要更改的记录

e.g. updatecats set pid=’3′ where id=’1′;

updatecats set pid=’99′ where id >= ’1′ && id

c)deletefrom 表名 [条件]

deletefrom cats; #清空数据表

truncatecats; #也可以清空数据表,效率更高,truncate将…截断

d)where条件

无论更新、删除、查找,只要写对条件就能准确找到要管理的一条或多条数据

【都可以使用各种运算符号,可以把字段当作一个变量来使用】

3、DQL【select】

SELECT[ALL | DISTINCT]

{*|table.*|[table.]field1[asalias1][,[table.]field2[as alias2]][.....]}

FROM 表名

[WHERE...]

[GROUPBY...]

[HAVING...]

[ORDERBY ...]

[LIMITcount]

使用SELECT查询语言,目的是可以按用户的想法将数据查出来,将结果返回!

SELECT[ALL | DISTINCT] #distinct 明显的,清楚的,有区别的

{*|table.*|[table.]field1[asalias1][,[table.]field2[as alias2]][.....]} #alias 别名,化名

FROM 表名

[WHERE...]

[GROUPBY...]

[HAVING...]

[ORDERBY ...]

[LIMITcount]

使用SELECT查询语言,目的是可以按用户的想法将数据查出来,将结果返回!

1、字段要列出要查询的字段

e.g. selectname,price from products;

selectprice,name from products;

select* from products;

selectproducts.* from products; #单表其实不需要使用表名

2、可以为每个字段起个别名【后面会用到(关键字,多表查询)】【表也可起别名(多表查询)】

e.g. selectname as bookname,price as bookprice from products;#使用别名;也可不加as;注意别名中有空格时,需要加单引号;

3、使用distinct作用与整个记录,取消重复的数据,只返回一个,而不是单独的一列

e.g. selectdistinct price ‘book price’ from products;

4、在SQL语句中使用表达式的列(可以使用算术运算符,条件运算符,逻辑运算符…)

游戏编程网www.cgzhw.com有详细的说明,这里就不再重复了。

5、WHERE可以在SELECT/UPDATE/DELETE中

a)可使用的逻辑运算符号(将多个条件组合)

&&/AND ||/OR !/NOT

b)可使用的比较运算符号

=#判断是否相等,与程序中的==作用相同

#判断是否相等,与=一致,但可以用于与NULL比较

!=/ #不等号

>

>=

c)程序中没有的运算符

ISNULL #与‘NULL’ 相等

ISNOT NULL

BETWEENAND

e.g. select* from products where id between 10 and 20;

与 “select* from products where id >= 10 && id

NOTBETWEEN AND 

IN

e.g. select* from products where id in(5,10,15,20);

updateproducts set num = 77 where id in(5,10,15,20);

deletefrom products where id in(5,10); 

d)模糊查询

LIKE _(任意一个字符)和%(0个或多个任意字符)两个通配符号

e.g. select* from products where name like ‘______’; #查找任意名字为6个字符的数据

select* from products where name like ‘%java%’; #查询名字中包含有java的数据 

NOTLIKE

e.g. select* from products where name not like ‘%java%’; #查询名字中不包含java字样的数据。 

REGEXP/RLIKE【正则表达式】 #RegExp 正则表达式

e.g. select* from products where name regexp ‘^java’; #查找所有以java开头的数据

select* from products where name regexp ‘s$’; #查找所有以s结尾的数据 

6、多表查询(连接查询),比较常用 #ambiguous

e.g. selectcats.name,products.name from cats,products;

selectc.name cname,c.desn cdesn,p.name pname,p.price,p.desn pdesn,p.numfrom carts c,products as p;#将A表中的记录与B表中的记录依次匹配,得到A*B种结果【笛卡尔乘积】,该结果是没有意义的。

selectc.name cname,c.desn cdesn,p.name pname,p.price,p.desn pdesn,p.numfrom carts c,products as p where c.id=p.cid;

selectc.name cname,c.desn cdesn,p.name pname,p.price,p.desn pdesn,p.numfrom carts c,products as p where c.id=p.cid and c.id=3;

selecta.id aid,a.name aname,b.id bid,b.name bname from cats a,catsb; #将单表分为多表,进行查询

selecta.id aid,a.name aname,b.id bid,b.name bname from cats a,cats b wherea.pid = b.id; 

7、嵌套查询子查询

e.g. select* from products where cid in(select id from carts where name regexp’^j’) ;

select* from products where cid in(select id from carts where name like’j%’); #作用相同 

8、orderby 字段 [asc正序]desc倒序

e.g. select* from order by name;

select* from order by price; #按价格非递减排序

select* from order by price desc; #非递增排序

select* from where cid > 5 order by price desc; #与where结合使用 

9、limitcount【限制显示个数】

e.g. select* from limit 7;

select* from order by id desc limit 7;

select* from where id

select* from where id > 14 order by id asc limit 0,1; #limit0,1表示从第0个开始取,取1个 

10、groupby 字段【分组】

常用函数:

count() #一个字段的总数

sum()

avg()#平均值

max()

min()

e.g. selectcount(*),sum(price),avg(price),max(price),min(price) from products;

selectcid,count(price),sum(price),avg(price),max(price),min (price) fromproducts group by cid;

selectcid,count(price),sum(price),avg(price),max(price),min (price) fromproducts group by cid having avg(price) > 50; #加having条件,与where类似

#having必须与gropby结合才能使用

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Windows 11에서 원치 않는 표시 언어를 완전히 제거하는 방법 Windows 11에서 원치 않는 표시 언어를 완전히 제거하는 방법 Sep 24, 2023 pm 04:25 PM

동일한 설정으로 너무 오랫동안 작업하거나 다른 사람과 PC를 공유하십시오. 일부 언어 팩이 설치되어 있을 수 있으며 이로 인해 종종 충돌이 발생합니다. 이제 Windows 11에서 원치 않는 표시 언어를 제거해야 할 때입니다. 충돌에 대해 말하면 여러 언어 팩이 있는 경우 실수로 Ctrl+Shift를 누르면 키보드 레이아웃이 변경됩니다. 이를 처리하지 않으면 현재 작업에 방해가 될 수 있습니다. 그럼 바로 방법을 살펴보겠습니다! Windows 11에서 표시 언어를 제거하는 방법은 무엇입니까? 1. 설정에서 +를 눌러 설정 앱을 열고 탐색 창에서 시간 및 언어로 이동한 후 언어 및 지역을 클릭하세요. Windows제거하려는 표시 언어 옆에 있는 줄임표를 클릭하고 팝업 메뉴에서 제거를 선택합니다. "를 클릭하세요.

iPhone에서 언어를 변경하는 3가지 방법 iPhone에서 언어를 변경하는 3가지 방법 Feb 02, 2024 pm 04:12 PM

iPhone이 가장 사용자 친화적인 전자 기기 중 하나라는 사실은 비밀이 아니며, 그 이유 중 하나는 원하는 대로 쉽게 개인화할 수 있다는 것입니다. 개인화에서는 iPhone을 설정할 때 선택한 언어와 다른 언어로 언어를 변경할 수 있습니다. 여러 언어에 익숙하거나 iPhone의 언어 설정이 잘못된 경우 아래 설명에 따라 변경할 수 있습니다. iPhone 언어 변경 방법 [3가지 방법] iOS를 사용하면 사용자가 iPhone에서 선호하는 언어를 자유롭게 전환하여 다양한 요구에 적응할 수 있습니다. Siri와의 상호 작용 언어를 변경하여 음성 지원과의 의사소통을 용이하게 할 수 있습니다. 동시에 로컬 키보드를 사용하면 여러 언어 간을 쉽게 전환하여 입력 효율성을 높일 수 있습니다.

대규모 언어 모델에 포괄적인 시청각 기능을 추가하는 DAMO Academy는 소스 Video-LLaMA를 공개합니다. 대규모 언어 모델에 포괄적인 시청각 기능을 추가하는 DAMO Academy는 소스 Video-LLaMA를 공개합니다. Jun 09, 2023 pm 09:28 PM

비디오는 오늘날의 소셜 미디어와 인터넷 문화에서 점점 더 중요한 역할을 하고 있으며 Douyin, Kuaishou, Bilibili 등은 수억 명의 사용자에게 인기 있는 플랫폼이 되었습니다. 사용자는 자신의 삶의 순간, 창작물, 흥미로운 순간, 기타 콘텐츠를 동영상을 중심으로 공유하여 다른 사람들과 교류하고 소통합니다. 최근에는 대규모 언어 모델이 인상적인 기능을 보여주었습니다. 대형 모델에 "눈"과 "귀"를 장착하여 비디오를 이해하고 사용자와 상호 작용할 수 있습니까? DAMO 아카데미 연구진은 이러한 문제에서 출발하여 종합적인 시청각 기능을 갖춘 대형 모델인 Video-LLaMA를 제안했습니다. Video-LLaMA는 비디오의 비디오 및 오디오 신호를 인식하고 이해할 수 있으며 오디오 및 비디오를 기반으로 일련의 복잡한 작업을 완료하기 위해 사용자가 입력한 지침을 이해할 수 있습니다.

Win10 컴퓨터의 언어를 중국어로 설정하는 방법은 무엇입니까? Win10 컴퓨터의 언어를 중국어로 설정하는 방법은 무엇입니까? Jan 05, 2024 pm 06:51 PM

때로는 컴퓨터 시스템을 설치했는데 시스템이 영어로 되어 있는 경우가 있습니다. 이 경우 컴퓨터 언어를 중국어로 변경해야 합니다. 이제 win10 시스템에서 컴퓨터 언어를 중국어로 변경하는 방법을 알려주세요. . win10에서 컴퓨터 언어를 중국어로 변경하는 방법 1. 컴퓨터를 켜고 왼쪽 하단에 있는 시작 버튼을 클릭합니다. 2. 왼쪽의 설정 옵션을 클릭하세요. 3. 열리는 페이지에서 "시간 및 언어"를 선택합니다. 4. 연 후 왼쪽의 "언어"를 클릭합니다. 5. 여기에서 원하는 컴퓨터 언어를 설정할 수 있습니다.

정말 소음이군요! ChatGPT는 언어를 이해합니까? PNAS: 먼저 '이해'가 무엇인지 알아보겠습니다. 정말 소음이군요! ChatGPT는 언어를 이해합니까? PNAS: 먼저 '이해'가 무엇인지 알아보겠습니다. Apr 07, 2023 pm 06:21 PM

기계가 그것에 대해 생각할 수 있는지 묻는 것은 잠수함이 헤엄칠 수 있는지 묻는 것과 같습니다. ——Dijkstra ChatGPT가 출시되기 전부터 업계에서는 이미 대형 모델이 가져오는 변화를 감지하고 있었습니다. 지난해 10월 14일 산타페 연구소의 멜라니 미첼(Melanie Mitchell) 교수와 데이비드 C. 크라카우어(David C. Krakauer) 교수는 "대규모 사전 훈련된 언어 모델이 언어를 이해할 수 있는지 여부"에 대한 모든 측면을 종합적으로 조사한 리뷰를 arXiv에 게재했습니다. "찬성" 및 "반대" 주장과 이러한 주장에서 파생된 광범위한 지능 과학의 주요 문제를 설명합니다. 논문 링크: https://arxiv.o

입만 움직여도 놀 수 있어요! AI를 사용하여 캐릭터를 바꾸고 적을 공격하십시오. 네티즌: '아야카, 카미리류 프로스트 파괴를 사용하세요.' 입만 움직여도 놀 수 있어요! AI를 사용하여 캐릭터를 바꾸고 적을 공격하십시오. 네티즌: '아야카, 카미리류 프로스트 파괴를 사용하세요.' May 13, 2023 pm 07:52 PM

지난 2년 동안 전 세계적으로 인기를 얻은 국내 게임의 경우 Genshin Impact가 확실히 선두를 차지했습니다. 지난 5월 발표된 올해 1분기 모바일게임 매출 조사 보고서에 따르면 '원신임팩트'가 5억6700만달러의 절대우위로 카드드로잉 모바일게임 부문 1위를 굳건히 차지했다고 밝혔다. 불과 18년 만에 모바일 플랫폼의 총 수익이 30억 달러(약 RM130억)를 넘어섰습니다. 이제 Xumi가 개장하기 전 마지막 2.8 섬 버전이 기한이 지났습니다. 오랜 드래프트 기간을 거쳐 마침내 새로운 플롯과 플레이할 영역이 생겼습니다. 그런데 '간황제'가 몇 명인지는 모르겠습니다. 이제 섬을 완전히 탐험하고 나니 다시 풀이 자라기 시작했습니다. 총 182개의 보물 상자 + 1개의 모라 상자(포함되지 않음)가 있습니다. 긴 잔디 기간에 대해 걱정할 필요가 없습니다. 아니, 긴 풀밭에서

에이전트의 경계 탐색: 대규모 언어 모델 에이전트의 성능을 종합적으로 측정하고 개선하기 위한 모듈형 벤치마크 프레임워크인 AgentQuest 에이전트의 경계 탐색: 대규모 언어 모델 에이전트의 성능을 종합적으로 측정하고 개선하기 위한 모듈형 벤치마크 프레임워크인 AgentQuest Apr 11, 2024 pm 08:52 PM

대규모 모델의 지속적인 최적화를 기반으로 하는 LLM 에이전트(이러한 강력한 알고리즘 엔터티)는 복잡한 다단계 추론 작업을 해결할 수 있는 잠재력을 보여주었습니다. 자연어 처리부터 딥 러닝까지 LLM 에이전트는 인간의 언어를 이해하고 생성할 수 있을 뿐만 아니라 전략을 수립하고 다양한 환경에서 작업을 수행하며 심지어 API 호출 및 코딩을 사용하여 빌드까지 할 수 있어 점차 연구 및 산업의 초점이 되고 있습니다. 솔루션. 이러한 맥락에서 AgentQuest 프레임워크의 도입은 LLM 에이전트의 평가 및 발전을 위한 모듈식 벤치마킹 플랫폼을 제공할 뿐만 아니라 연구원에게 이러한 에이전트의 성능을 추적하고 개선할 수 있는 강력한 도구를 제공합니다. 좀 더 세분화된 수준

수정: Windows 11에서 Alt + Shift를 눌러도 언어가 변경되지 않습니다. 수정: Windows 11에서 Alt + Shift를 눌러도 언어가 변경되지 않습니다. Oct 11, 2023 pm 02:17 PM

Alt+Shift는 Windows 11에서 언어를 변경하지 않지만 Win+스페이스바를 사용하면 동일한 효과를 얻을 수 있습니다. 또한 키보드 오른쪽에 있는 키가 아닌 왼쪽 Alt+Shift 키를 사용해야 합니다. Alt+Shift로 언어를 변경할 수 없는 이유는 무엇입니까? 더 이상 선택할 언어가 없습니다. 입력 언어 단축키가 변경되었습니다. 최신 Windows 업데이트의 버그로 인해 키보드 언어를 변경할 수 없습니다. 이 문제를 해결하려면 최신 업데이트를 제거하세요. 다른 작업을 수행하기 위해 동일한 단축키를 사용하는 응용 프로그램의 활성 창에 있습니다. Windows 11에서 AltShift를 사용하여 언어를 어떻게 변경합니까? 1. 올바른 키 순서를 사용하십시오. 먼저 + 조합을 사용하는 올바른 방법을 사용하고 있는지 확인하십시오.

See all articles