Heim > Datenbank > MySQL-Tutorial > Einführung in die Verwendung von Ansichten in MYSQL (Codebeispiel)

Einführung in die Verwendung von Ansichten in MYSQL (Codebeispiel)

不言
Freigeben: 2019-02-27 13:52:43
nach vorne
3074 Leute haben es durchsucht

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

  1. SQL-Anweisungen wiederverwenden

  2. Vereinfachen Sie SQL-Abfragen und rufen Sie Daten schnell ab

  3. Sie müssen nur die Teilstruktur der Tabelle kennen

  4. Daten gemäß spezifischer Autorisierung schützen

  5. Ä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

  1. Tabellenname muss eindeutig sein (mit anderen Ansichten und Tabellen)

  2. Keine Einschränkungen beim Erstellen von Ansichten

  3. Ausreichend Berechtigungen

  4. Ansichten können verschachtelt werden und eine Ansicht kann durch Abfragen aus anderen Ansichten erstellt werden

  5. Wenn sowohl die Ansicht als auch die Abfrage von der Ansicht haben Reihenfolge nach, die Reihenfolge in der Ansicht nach wird überschrieben

  6. Ansichten können nicht indiziert werden

  7. Ansichten können mit Tabellen verwendet werden

4. Verwenden Sie die Ansicht

  1. , um eine Ansicht zu erstellen

  2. , um die Anweisungen anzuzeigen, die die Ansicht erstellen. Anzeigen, Ansicht erstellen, Ansichtsname erstellen

  3. Ansicht löschen, Ansicht löschen, Ansichtsname löschen

  4. Ansicht aktualisieren, 1⃣️ Zuerst löschen und dann erstellen 2⃣️ Direkt Ansicht erstellen oder ersetzen verwenden

  5. 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
Nach dem Login kopieren

Ansicht verwenden

SELECT cust_name, cust_contact
FROM productcustomers
WHERE prod_id = 'TNT2';
Nach dem Login kopieren

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;
Nach dem Login kopieren

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;
Nach dem Login kopieren

Sie können die Ergebnisse direkt über die Ansicht abfragen

SELECT * FROM vendorlocations;
Nach dem Login kopieren

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;
Nach dem Login kopieren

Ansichten direkt verwenden

SELECT * from custmeremaillist ;
Nach dem Login kopieren

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;
Nach dem Login kopieren

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;
Nach dem Login kopieren

Ansichten verwenden

SELECT
    *
FROM
    orderitemsexpanded
WHERE order_num=20005;
Nach dem Login kopieren

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. 导出(计算)列
Nach dem Login kopieren

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!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
So ändern Sie MySQL in MySQL
Aus 1970-01-01 08:00:00
0
0
0
MySQL-Startfehler unter Centos
Aus 1970-01-01 08:00:00
0
0
0
MySQL stoppt den Prozess
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage