看过牛腩视频后,前17集讲后台代码的编写,尤其讲到查询语句的时候,顿时感觉原来学习过的查询语句中用到的关键字烟消云散了,啥都不记得了,通过看视频,帮着回忆了一部分,在这里总结一下,查询语句中用到的关键字的含义及使用。 一、select语句(单个表)
看过牛腩视频后,前17集讲后台代码的编写,尤其讲到查询语句的时候,顿时感觉原来学习过的查询语句中用到的关键字烟消云散了,啥都不记得了,通过看视频,帮着回忆了一部分,在这里总结一下,查询语句中用到的关键字的含义及使用。一、select语句(单个表)
1.最简单的查询:
select * from [where ]
select column1,column2....from [where]
这里需要注意的是where子句中条件过滤使用到的关键字,比如用到逻辑运算符like 中的’%‘(匹配一个或多个字符)和’_‘(仅匹配一个)等。这个在新闻发布系统中也有用到。
例如:按标题搜索:
Select top 10 n.id,n.title,n.createtime,c.[name] from news n inner join category c on c.caid=c.id where n.title like '%' + @title + '%'
当然还有很多,例如between,not ,in等关键字的使用也很重要。
2.DISTINCT关键字
这个关键字,主要用来取出列中唯一的值,比如:记录中的一个字段值(city)如果有重复(廊坊,北京,廊坊,北京),那么利用DISTINCT关键字取出唯一值,即任何重复的值只计数一次,结果为为:(廊坊,北京)。
select DISTINCT city from [table]
3.使用别名
利用别名可以显示我们想要的名字,方便阅读。select city as 城市 from ...
4.group by 和having子句
group by 用来对查询到的结果集进行分组,必须位于select语句中的from子句或where子句之后。
having子句类似于where子句,紧跟在group by子后,作为一个查询条件。
与where子句的区别:where子句作用于一条记录中的查询条件,而having子句则作用于一列的查询条件
例如:
select location from citytable where city='北京' --查询城市名为‘北京’的城市的位置 select city group by city having count(memberId)>=3 --查询城市成员总数大于等于3的城市,同时按城市名分组
二、多表查询
1、inner join
要求,查询的多张表中必须具有相同的匹配项。其中on表示作用的表的条件,n,c 为别名
Select * From news n Inner join category c on c.caid=c.id
要执行的查询结果必须是在两张表中同时含有相同的类别号的记录才会被查询出来。
例如:以牛腩视频中例子为例:
category表中id表示新闻类别的id ,而news表中的caid则表示该新闻属于具体哪个类别
那么执行上面查询语句后的结果:
inner join表
可以看到结果为类别号在两张表中均存在的项。inner join还包括等值联合和不等值,这主要由on后面的条件决定
2.left join
左外连接:连接时,on条件左边表所有项均查询出来,而右边表中若无匹配项,则以null代替
上面两张表,执行
select * from category c left join news n on c.id=n.caid
结果为:
3.right join
顾名思义,右外连接结果与left join相反,将右边表所有项查询出来,而左边表中无匹配项的则以null代替。
4.full join
无论左边还是右边所有项均返回结果。无对应项以null代替。
三、其它
除了以上涉及到的查询关键字外,还涉及到了嵌套查询,in关键字的使用,对sql记录进行编号排序后按顺序查询等。利用
SELECT ROW_NUMBER() OVER (ORDER BY id desc)AS Row --Row为别名以上只是涉及到了一部分的查询关键字的总结,也是经常用到的,逐渐学习,才发现原来的知识还是应该不断的回忆和应用才能发现它更深一层应用的含义。更多关于数据库的知识有待进一步实践总结。

MysqloffersVariousStorageEngines, EverySuitedfordifferentusecases: 1) InnoDbisidealforApplicationsNeedingaCidComplianceandHighConcurrency, SupportingingTransactions und MisseractersactionSactions.2) MyisamisBestforread-Heavyworks, Fehlen von Abladungen, mangelndtransaktionen

Zu den allgemeinen Sicherheitslücken in MySQL gehören die SQL -Injektion, schwache Passwörter, unsachgemäße Berechtigungskonfiguration und eine nicht updierte Software. 1. SQL -Injektion kann durch Verwendung von Vorverarbeitungsanweisungen verhindert werden. 2. Schwache Passwörter können vermieden werden, indem Sie starke Kennwortstrategien verwenden. 3. Eine unsachgemäße Berechtigungskonfiguration kann durch regelmäßige Überprüfung und Anpassung der Benutzerberechtigungen behoben werden. 4. Die nicht updierte Software kann durch regelmäßiges Überprüfen und Aktualisieren der MySQL -Version gepatcht werden.

Das Identifizieren langsamer Abfragen in MySQL kann erreicht werden, indem langsame Abfrageprotokolle aktiviert und Schwellenwerte festgelegt werden. 1. Aktivieren Sie langsame Abfrageprotokolle und setzen Sie Schwellenwerte. 2. Sehen und analysieren Sie langsame Abfrageprotokolldateien und verwenden Sie Tools wie MySQLDUMPSLOW oder PT-Query-Digest für eingehende Analysen. 3. Die Optimierung langsamer Abfragen kann durch Indexoptimierung, Umschreiben von Abfragen und Vermeidung der Verwendung von Select*erreicht werden.

Um die Gesundheit und Leistung von MySQL -Servern zu überwachen, sollten Sie auf Systemgesundheit, Leistungsmetriken und Abfrageausführung achten. 1) Überwachen Sie die Systemgesundheit: Verwenden Sie die Befehle von Top-, HTOP- oder ShowglobalStatus, um CPU-, Speicher-, Festplatten -E/A- und Netzwerkaktivitäten anzuzeigen. 2) Leistungsindikatoren verfolgen: Überwachen Sie die Schlüsselindikatoren wie die Abfragennummer pro Sekunde, die durchschnittliche Abfragezeit und den Cache -Hit -Rate. 3) Optimierung der Abfrageausführung sicherstellen: Aktivieren Sie langsame Abfragenprotokolle, zeichnen und optimieren Sie Abfragen, deren Ausführungszeit den festgelegten Schwellenwert überschreitet.

Der Hauptunterschied zwischen MySQL und Mariadb ist Leistung, Funktionalität und Lizenz: 1. MySQL wird von Oracle entwickelt und Mariadb ist seine Gabel. 2. Mariadb kann in Umgebungen mit hoher Last besser abschneiden. 3.MariADB bietet mehr Speichermotoren und Funktionen. 4.Mysql nimmt eine doppelte Lizenz an, und Mariadb ist vollständig Open Source. Die vorhandene Infrastruktur, Leistungsanforderungen, funktionale Anforderungen und Lizenzkosten sollten bei der Auswahl berücksichtigt werden.

MySQL verwendet eine GPL -Lizenz. 1) Die GPL -Lizenz ermöglicht die freie Verwendung, Änderung und Verteilung von MySQL, aber die geänderte Verteilung muss GPL entsprechen. 2) Gewerbelizenzen können öffentliche Änderungen vermeiden und für gewerbliche Anwendungen geeignet sind, die Vertraulichkeit erfordern.

Die Situationen bei der Auswahl von InnoDB anstelle von MyISAM umfassen: 1) Unterstützung der Transaktion, 2) hohe Genauigkeitsumgebung, 3) hohe Datenkonsistenz; Umgekehrt umfasst die Situation bei der Auswahl von MyISAM: 1) hauptsächlich Lesen von Operationen, 2) Es ist keine Transaktionsunterstützung erforderlich. InnoDB ist für Anwendungen geeignet, die eine hohe Datenkonsistenz und Transaktionsverarbeitung erfordern, z. B. E-Commerce-Plattformen, während MyISAM für lessintensive und transaktionsfreie Anwendungen wie Blog-Systeme geeignet ist.

In MySQL besteht die Funktion von Fremdschlüssel darin, die Beziehung zwischen Tabellen herzustellen und die Konsistenz und Integrität der Daten zu gewährleisten. Fremdeschlüssel behalten die Wirksamkeit von Daten durch Referenzintegritätsprüfungen und Kaskadierungsvorgänge bei. Achten Sie auf die Leistungsoptimierung und vermeiden Sie bei der Verwendung häufige Fehler.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft
