PostgreSQL Υπάρχει με Παράδειγμα Επιλογή, Εισαγωγή, Ενημέρωση & Διαγραφή

Τι υπάρχει υπάρχει μέσα PostgreSQL?

The PostgreSQL ΥΠΑΡΧΕΙ Ο τελεστής ελέγχει εάν υπάρχουν σειρές σε ένα υποερώτημα. Αυτό σημαίνει ότι ο τελεστής χρησιμοποιείται μαζί με ένα υποερώτημα. Ο τελεστής Exists λέγεται ότι συναντήθηκε όταν βρεθεί τουλάχιστον μία σειρά στο υποερώτημα. Μπορείτε να χρησιμοποιήσετε αυτήν τη λειτουργία μαζί με δηλώσεις SELECT, UPDATE, INSERT και DELETE.

Postgres Υπάρχει Σύνταξη ερωτήματος

Εδώ είναι η σύνταξη για το PostgreSQL Δήλωση ΥΠΑΡΧΕΙ:

WHERE EXISTS (subquery);

Η παραπάνω σύνταξη δείχνει ότι ο τελεστής EXISTS δέχεται ένα όρισμα, το οποίο είναι ένα υποερώτημα. Το υποερώτημα είναι απλώς ένα Δήλωση SELECT που θα πρέπει να ξεκινά με ένα SELECT * αντί για μια λίστα ονομάτων στηλών ή εκφράσεων.

PostgreSQL Υπάρχει με δήλωση SELECT

Ας δούμε πώς να χρησιμοποιήσετε μια πρόταση SELECT με τον τελεστή EXISTS. Έχουμε τους παρακάτω πίνακες:

Βιβλίο:

PostgreSQL Υπάρχει με δήλωση SELECT

Τιμή:

PostgreSQL Υπάρχει με δήλωση SELECT

Εκτελέστε την ακόλουθη δήλωση:

SELECT *
FROM Book
WHERE EXISTS (SELECT *
              FROM Price
              WHERE Book.id = Price.id);

Αυτό επιστρέφει τα ακόλουθα:

PostgreSQL Υπάρχει με δήλωση SELECT

Η παραπάνω εντολή θα πρέπει να επιστρέψει όλες τις εγγραφές στον πίνακα Βιβλίο του οποίου το αναγνωριστικό ταιριάζει με το αναγνωριστικό οποιωνδήποτε εγγραφών από το υποερώτημα. Μόνο ένα αναγνωριστικό αντιστοιχίστηκε. Ως εκ τούτου, μόνο ένας δίσκος επιστράφηκε.

PostgreSQL Υπάρχει με Δήλωση INSERT

Μπορούμε να χρησιμοποιήσουμε τον τελεστή EXISTS σε ένα INSERT δήλωση. Έχουμε τους παρακάτω 3 πίνακες:

Βιβλίο:

PostgreSQL Υπάρχει με Δήλωση INSERT

Τιμή:

PostgreSQL Υπάρχει με Δήλωση INSERT

Τιμή 2:

PostgreSQL Υπάρχει με Δήλωση INSERT

Στη συνέχεια, μπορούμε να εκτελέσουμε την ακόλουθη δήλωση:

INSERT INTO Price
SELECT id, price
FROM Price2
WHERE EXISTS (SELECT id
              FROM Book
              WHERE Book.id = Price2.id);

Ο πίνακας τιμών έχει πλέον ως εξής:

PostgreSQL Υπάρχει με Δήλωση INSERT

Η σειρά με αναγνωριστικό 5 στον πίνακα με το όνομα Price2 αντιστοιχίστηκε. Αυτή η εγγραφή στη συνέχεια εισήχθη στον πίνακα Τιμή.

Η Postgres υπάρχει με δήλωση ΕΝΗΜΕΡΩΣΗΣ

Μπορούμε να χρησιμοποιήσουμε τον τελεστή EXISTS σε μια δήλωση UPDATE.

Εκτελέστε το ακόλουθο ερώτημα:

UPDATE Price
SET price = (SELECT price
              FROM Price2
              WHERE Price2.id = Price.id)
WHERE EXISTS (SELECT id, price
FROM Price2
WHERE Price2.id = Price.id);

Η Postgres υπάρχει με δήλωση ΕΝΗΜΕΡΩΣΗΣ

Ενημερώνουμε τη στήλη τιμών του πίνακα Τιμών. Στόχος μας είναι οι τιμές των αντικειμένων που μοιράζονται ένα αναγνωριστικό να είναι ίδιες. Μόνο μία σειρά αντιστοιχίστηκε, δηλαδή 5.

Επειδή όμως οι τιμές είναι ίσες, δηλαδή 205, δεν έγινε ενημέρωση. Αν υπήρχε διαφορά, θα είχε γίνει ενημέρωση.

Postgres Υπάρχει με δήλωση ΔΙΑΓΡΑΦΗ

A PostgreSQL Η δήλωση DELETE μπορεί να χρησιμοποιήσει τον τελεστή EXISTS. Εδώ είναι ένα παράδειγμα:

DELETE FROM Price
WHERE EXISTS (SELECT *
              FROM Price2
              WHERE Price.id = Price2.id);

Ο πίνακας τιμών έχει πλέον ως εξής:

Postgres Υπάρχει με δήλωση ΔΙΑΓΡΑΦΗ

Η σειρά με αναγνωριστικό 5 έχει διαγραφεί.

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Τώρα ας δούμε πώς μπορούν να εκτελεστούν αυτές οι ενέργειες χρησιμοποιώντας το pgAdmin:

Τρόπος χρήσης του Ερώτημα Exists in PostgreSQL με Δήλωση SELECT χρησιμοποιώντας το pgAdmin

Ακολουθούν τα βήματα για να χρησιμοποιήσετε το ερώτημα Υπάρχει PostgreSQL με δήλωση SELECT χρησιμοποιώντας το pgAdmin:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin

Ανοίξτε το pgAdmin και συνδεθείτε στο λογαριασμό σας χρησιμοποιώντας τα διαπιστευτήριά σας

Βήμα 2) Δημιουργήστε μια βάση δεδομένων επίδειξης

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα

Πληκτρολογήστε το παρακάτω ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

SELECT *
FROM Book
WHERE EXISTS (SELECT *
              FROM Price
              WHERE Book.id = Price.id);

Βήμα 4) Εκτελέστε το ερώτημα

Κάντε κλικ στο κουμπί Εκτέλεση

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Θα πρέπει να επιστρέψει τα ακόλουθα:

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Με Δήλωση INSERT

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

Υπάρχει δήλωση στο PostgreSQL χρησιμοποιώντας το pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

INSERT INTO Price
SELECT id, price
FROM Price2
WHERE EXISTS (SELECT id
              FROM Book
              WHERE Book.id = Price2.id);

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

Υπάρχει δήλωση στο PostgreSQL χρησιμοποιώντας το pgAdmin

Ο πίνακας τιμών θα πρέπει τώρα να έχει ως εξής:

Υπάρχει δήλωση στο PostgreSQL χρησιμοποιώντας το pgAdmin

Με Δήλωση ΕΝΗΜΕΡΩΣΗΣ

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

Υπάρχει δήλωση στο PostgreSQL χρησιμοποιώντας το pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

UPDATE Price
SET price = (SELECT price
              FROM Price2
              WHERE Price2.id = Price.id)
WHERE EXISTS (SELECT id, price
FROM Price2
WHERE Price2.id = Price.id);

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Ο πίνακας τιμών θα πρέπει τώρα να έχει ως εξής:

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Με δήλωση DELETE

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

DELETE FROM Price
WHERE EXISTS (SELECT *
              FROM Price2
              WHERE Price.id = Price2.id);

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Ο πίνακας τιμών θα πρέπει τώρα να έχει ως εξής:

PostgreSQL Υπάρχει δήλωση με χρήση pgAdmin

Περίληψη

  • Ο τελεστής ΥΠΑΡΧΕΙ ελέγχει εάν υπάρχουν σειρές σε ένα υποερώτημα.
  • Χρησιμοποιείται με ένα υποερώτημα και λέγεται ότι έχει ικανοποιηθεί όταν το υποερώτημα επιστρέφει τουλάχιστον μία σειρά.
  • Χρησιμοποιείται μαζί με δηλώσεις SELECT, UPDATE, INSERT και DELETE.

Κάντε λήψη της βάσης δεδομένων που χρησιμοποιείται σε αυτό το σεμινάριο