Heim >Datenbank >MySQL-Tutorial >Einführung in die Verwendung von Ansichten in MYSQL (Codebeispiel)
Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von Ansichten in MYSQL (Codebeispiele). Ich hoffe, dass er für Sie hilfreich ist. helfen.
1. Was ist eine Ansicht?
Führen Sie eine SQL aus und speichern Sie die Ergebnismenge in einer virtuellen Tabelle
(Verwandte Empfehlungen: MySQL-Tutorial)
2. Warum Ansichten verwenden
SQL-Anweisungen wiederverwenden
Vereinfachen Sie SQL-Abfragen und rufen Sie Daten schnell ab
Sie müssen nur die Teilstruktur der Tabelle kennen
Daten gemäß spezifischer Autorisierung schützen
Ändern des Datenformats und der Darstellung. Ansichten können Daten zurückgeben, die sich von der Darstellung und dem Format der zugrunde liegenden Tabelle unterscheiden.
Hinweise
• Nachdem die Ansicht erstellt wurde, kann sie grundsätzlich auf die gleiche Weise wie eine Tabelle verwendet werden (Abfragen, Filtern, Daten sortieren, interagieren). mit anderen Ansichten oder Link, (Hinzufügen, Aktualisieren))
• Eine Ansicht ist lediglich eine Funktion zum Anzeigen von an anderer Stelle gespeicherten Daten. Sie enthält selbst keine Daten und die zurückgegebenen Daten werden auch aus anderen Tabellen abgerufen.
• Da die Ansicht selbst keine Daten enthält, kann es bei der Indizierung mehrerer Tabellenverknüpfungen oder Verschachtelungen zu Leistungsproblemen kommen, die getestet werden müssen
3 Regeln und Einschränkungen
Tabellenname muss eindeutig sein (mit anderen Ansichten und Tabellen)
Keine Einschränkungen beim Erstellen von Ansichten
Ausreichend Berechtigungen
Ansichten können verschachtelt werden und eine Ansicht kann durch Abfragen aus anderen Ansichten erstellt werden
Wenn sowohl die Ansicht als auch die Abfrage von der Ansicht haben Reihenfolge nach, die Reihenfolge in der Ansicht nach wird überschrieben
Ansichten können nicht indiziert werden
Ansichten können mit Tabellen verwendet werden
4. Verwenden Sie die Ansicht
, um eine Ansicht zu erstellen
, um die Anweisungen anzuzeigen, die die Ansicht erstellen. Anzeigen, Ansicht erstellen, Ansichtsname erstellen
Ansicht löschen, Ansicht löschen, Ansichtsname löschen
Ansicht aktualisieren, 1⃣️ Zuerst löschen und dann erstellen 2⃣️ Direkt Ansicht erstellen oder ersetzen verwenden
Verwenden Sie Ansichten, um komplexe Join-Abfragen zu vereinfachen
5. Verwenden Sie Ansichten, um komplexe Join-Abfragen zu vereinfachen
Ansicht erstellen
CREATE VIEW productcustomers AS SELECT cust_name, cust_contact, prod_id FROM customers, orders, orderitems WHERE customers.cust_id = orders.cust_id AND orderitems.order_num = orders.order_num
Ansicht verwenden
SELECT cust_name, cust_contact FROM productcustomers WHERE prod_id = 'TNT2';
6. Ansicht verwenden, um die abgerufenen Daten neu zu formatieren
select concat (rtrim(vend_name) , '(',rtrim(vend_country),')') as vend_title from vendors order by vend_name;
Wenn Sie dieses Format häufig verwenden, können Sie eine Ansicht erstellen
CREATE VIEW vendorlocations AS SELECT concat ( rtrim( vend_name ), '(', rtrim( vend_country ), ')' ) AS vend_title FROM vendors ORDER BY vend_name;
Sie können die Ergebnisse direkt über die Ansicht abfragen
SELECT * FROM vendorlocations;
7. Verwenden Sie Ansichten, um unerwünschte Daten zu filtern
create view custmeremaillist AS SELECT cust_id ,cust_name,cust_email from customers where cust_email is not NULL;
Ansichten direkt verwenden
SELECT * from custmeremaillist ;
8. Ansichten und berechnete Felder verwenden
MySQL-Abfrage
SELECT prod_id, quantity, item_price, quantity * item_price AS expanded_price FROM orderitems WHERE order_num=20005;
Ansichten erstellen
CREATE VIEW orderitemsexpanded AS SELECT order_num, prod_id, quantity, item_price, quantity * item_price AS expanded_price FROM orderitems WHERE order_num=20005;
Ansichten verwenden
SELECT * FROM orderitemsexpanded WHERE order_num=20005;
9. Ansichten aktualisieren
Normalerweise können Ansichten aktualisiert werden (einfügen, aktualisieren, löschen). Durch das Aktualisieren der Ansicht wird die Basistabelle aktualisiert. Die Ansicht kann nicht aktualisiert werden, wenn sie die folgenden Definitionen aufweist.
1. 分组(group by 和 having) 2. 联结 3. 自查询 4. 并 5. 聚合函数(min()、count()、sum()等) 6. Distinct 7. 导出(计算)列
Die Ansicht ist also am besten, wenn Sie die Auswahlabfrage direkt verwenden.
Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von Ansichten in MYSQL (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!