Heim > Artikel > Backend-Entwicklung > Was sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?
Der vorherige Artikel stellte Ihnen vor: „Welche Arten von Bereichen gibt es in PHP? Auf welchen Bereich kann mit dem Oszilloskop zugegriffen werden? 》In diesem Artikel erfahren Sie weiterhin, was die grundlegenden Wissenspunkte von Datenbanken in PHP sind. Grundaussage? Grundkonzept? Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
Grundlegende Datenbankkonzepte
Befehlsendezeichen: „g“ oder „;“
Mysql unterstützt Datentypen:
Numerischer Typ
Integer-Typ
Ti nyint, smallint , mediumint, int und bigint
Ddl-Anweisung (bei Befehlen kann die Groß-/Kleinschreibung beachtet werden)
Erstellen Sie eine Datenbank
Create database 数据库名
Wählen Sie die zu bedienende Datenbank aus: use Database; für die zu bedienende Datenbank müssen wir use to verwenden Wählen Sie
Datenbank anzeigen. Alle Datentabellen in Tabellen anzeigen.
Datenbank löschen Tabelle Tabellenname (
Feld 1 Name Feld 1 Typ Spaltenbeschränkungen, Feld 2 Name Feld 2 Typ Spaltenbeschränkungen,Nach dem Erstellen der Tabelle können Sie die Formulardefinition anzeigenTabelle löschenDrop database 数据库名称Sehen Sie sich die SQL-Anweisung an, die die erstellt hat TabelleDesc 表名;
Show create table 表名\G(\G选项使得记录能按照字段竖向排列,一遍更好展示内容较长的记录,\G之后不需要加分号)Tabellenfeldtyp ändern
Drop table 表名;
Alter table 表名 modify [colimn] 字段定义 [first|after字段名];
Alter table 表名 add [colimn] 字段定义 [first|after字段名];
Hinweis: Sowohl ändern als auch kann die Definition der Tabelle ändern Der Unterschied besteht darin, dass Sie die Spalten nach der Änderung des Namens nicht besonders praktisch lösen müssen. Der Vorteil besteht darin, dass change
den Feldnamen ändern kann. Ändern Sie die Feldanordnung und -sortierung. first|after field name] Mit dieser Auswahl kann die Position des Felds in der Tabelle geändert werden. Neue Felder werden standardmäßig an der letzten Position in der Tabelle geladen und change/modify
ändert sich nicht die Feldposition standardmäßig
Hinweis: Diese Schlüsselwörter von „change/first|after“-Feldnamen gehören zu MySQL-Erweiterungen auf Standard-SQL sind möglicherweise nicht auf andere Datenbanken anwendbar
Tabellennamen ändernchange
可以修改字段名
修改字段排列排序
[first|after字段名]这个选择可以用来修改字段在表中的位置,新增字段默认是加载在表中最后位置,而change/modify
默认不会改变字段位置
注:change/first|after 字段名 这些关键字都是属于mysql在标准sql上的扩展,在其他数据库上不一定适用
更改表名
Alter table 表名 change [colimn] 旧的字段名 字段定义 [first|after字段名];
插入记录
Insert into 表名(字段1,字段2, ...,字段n) values(值1,值2,... ,值n);
可以不用指定字段名,但是values
After table 表名 rename [to] 新的表名 Dml语句
Datensätze einfügen
WerteEinfügen in Tabellennamen (Feld 1, Feld 2, ..., Feld n) Werte (Wert 1, Wert 2,..., Wert n);
Sie müssen den Feldnamen nicht angeben, aber Die Reihenfolge nachvalues
sollte mit der Feldsortierung übereinstimmenMehrere Datensätze gleichzeitig einfügenIn Tabellennamen einfügen (Feld 1, Feld 2, ..., Feld n)
(Wert 1, Wert 2,..., Wert n),
(Wert 1, Wert 2,..., Wert n);
Datensätze abfragen
select * from 表名 where 条件;(*代表你查询表里的所有字段,如果我们查询某一字段,只需要将*改成那一字段即可。)Eindeutige Datensätze abfragen
Select distinct 字段1,字段2 from 表名;(只要字段1,字段2任何一个字段有不同就会被选择,一般用于distinct,只筛选一个字段)
Bedingte Abfrage
Sortieren und begrenzen
aufsteigend: von niedrig nach hoch, auch der Standardwert, wählen Sie * aus. Tabellenname, Reihenfolge nach Feldname, aufsteigend;
absteigend: von hoch nach unten, wählen Sie * aus Reihenfolge der Tabellennamen nach Feldnamen desc;
Mehrere Felder sortieren, Auswahl * aus Tabellennamen, Reihenfolge nach Feldnamen desc,id desc;
Die Zahl 1 gibt an, ab welchem Datensatz der Abruf gestartet werden soll (beginnend bei 0), und Die Zahl 2 gibt an, wie viele Datensätze abgerufen werden sollen!
AggregationBenutzer müssen einige Zusammenfassungsvorgänge ausführen, was SQL-Aggregationsvorgänge erfordert.
①sum sum select sum(field name) from table name;
②count total number of Records select count(*|field name) from table name;
③maximaler Wert select max(field name) from table name;
④Mindestwert: Wählen Sie „Min“ (Feldname) aus dem Tabellennamen aus. von der Mitarbeitergruppe nach Abteilung mit Rollup; ⑦HAVING
Hinweis: Der Unterschied zwischenhaving und where besteht darin, dass die Ergebnisse nach der Aggregation bedingt gefiltert werden, während die Datensätze vor der Aggregation gefiltert werden. Es sollte genauso genau sein Mögliche Datensätze werden zuerst gefiltert! select sum(salary) from employee group by department having sum(salary)>1000;
在一起使用:select sum(id),max(id),min(id),count(*) from a1;
Tabellenverbindung (kann verwendet werden, wenn Felder in mehreren Tabellen angezeigt werden)
Verbindungsklassifizierung
Innerer Join:Übereinstimmende Datensätze in zwei Tabellen auswählen (Tabelle.Feld, ... aus dem Namen von Tabelle 1 auswählen, Name der Tabelle 2,... wobei [Übereinstimmungsbedingungen wie Tabelle 1. Feld = Tabelle 2. Feld];) Die SELECT-Anweisung kann dem Feld einen Alias geben. Schreiben Sie ihn einfach direkt nach dem Feld, das abgefragt werden muss und angezeigt, oder Sie können die Tabelle mit einem Alias versehen
包含左边表中的所有记录(包括右表中没有和它匹配的记录)select * from 表1 left join 表2 on 表1.字段=表2.字段;
包含右边表中的所有记录(包括左表中没有和它匹配的记录)
左连接和右连接是可以相互转换的!
子查询(一个查询需要另外一个查询的结果参与的时候)
用于子查询的关键字:
in在..里面(注意点 in后面的子语句必须只返回一个字段,若查询结果唯一(只有一条)可以使用=代替in,not in与in相反)
语法:select * from 表名1 where 字段1 in(select 字段2 from 表2);
Exists(后面那个子语句有没有查询出记录来,如果查询出记录来返回true,否则就是false,并且查询出来的记录的具体的值是NULL也可以,也是返回true.)
语法:select语句 where exists(select 语句);
not exits(与exists相反)
记录联合(我们常常会碰到需要将两个表或者多个表的数据按照一定的查询条件查询出来后,将结果合并到一起显示这是就需要用到记录联合)
多个select 语句用UNION或者UNION ALL隔开即可实现
区别: 前者会将多个查询结果合并后并且进行去除重复后返回,后者 则直接合并并不去除重复
联合的条件:查询的列个数要相等
更新记录
更新一个表
Update 表名 set 字段1=值1,字段2=值2,...,字段n=值n[where条件];
更新多个表中数据
Update 表1,表2,...表n set 表1.字段1=表达式1,...,表n.字段n=表达式n[where条件];
注:多表更新更多是用在根据一个标的字段来动态更新另一表的字段
推荐学习:php视频教程
Das obige ist der detaillierte Inhalt vonWas sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!