SQL Select Statements: Παραδείγματα Select Distinct, Select Into, Insert in και More

Επιλέξτε και Από ρήτρες

Το τμήμα ΕΠΙΛΟΓΗΣ ενός ερωτήματος κανονικά καθορίζει ποιες στήλες των δεδομένων θα εμφανίζονται στα αποτελέσματα. Υπάρχουν επίσης επιλογές που μπορείτε να εφαρμόσετε για την εμφάνιση δεδομένων που δεν είναι στήλη πίνακα.

Αυτό το παράδειγμα δείχνει τρεις στήλες που επιλέχθηκαν από τον πίνακα «μαθητής» και μία στήλη που υπολογίστηκε. Η βάση δεδομένων αποθηκεύει το studentID, FirstName και LastName του μαθητή. Μπορούμε να συνδυάσουμε τις στήλες Όνομα και Επώνυμο για να δημιουργήσουμε τη στήλη Υπολογιζόμενο πλήρες όνομα.

select studentID, FirstName, LastName, FirstName + ' ' + LastName as FullName from student;
+-----------+-------------------+------------+------------------------+ | studentID | FirstName | LastName | FullName | +-----------+-------------------+------------+------------------------+ | 1 | Monique | Davis | Monique Davis | | 2 | Teri | Gutierrez | Teri Gutierrez | | 3 | Spencer | Pautier | Spencer Pautier | | 4 | Louis | Ramsey | Louis Ramsey | | 5 | Alvin | Greene | Alvin Greene | | 6 | Sophie | Freeman | Sophie Freeman | | 7 | Edgar Frank "Ted" | Codd | Edgar Frank "Ted" Codd | | 8 | Donald D. | Chamberlin | Donald D. Chamberlin | | 9 | Raymond F. | Boyce | Raymond F. Boyce | +-----------+-------------------+------------+------------------------+ 9 rows in set (0.00 sec)

* Όπως με όλα αυτά τα πράγματα SQL υπάρχουν πολύ περισσότερα από αυτά που περιλαμβάνονται σε αυτόν τον εισαγωγικό οδηγό.

Ελπίζω αυτό τουλάχιστον να σας δώσει αρκετά για να ξεκινήσετε.

Ανατρέξτε στο εγχειρίδιο για τον διαχειριστή της βάσης δεδομένων σας και διασκεδάστε δοκιμάζοντας μόνοι σας διαφορετικές επιλογές.

SQL Επιλέξτε διακριτή δήλωση

Εισαγωγή

Αυτή η λέξη-κλειδί μας επιτρέπει να λαμβάνουμε λίστες με μοναδικές τιμές σε μια στήλη. Αυτός ο οδηγός θα το αποδείξει αυτό.

Πλήρης εμφάνιση των δεδομένων στον πίνακα μαθητών

USE fcc_sql_guides_database; SELECT studentID, FullName, sat_score, programOfStudy, rcd_Created, rcd_Updated FROM student;
+-----------+------------------------+-----------+------------------+---------------------+---------------------+ | studentID | FullName | sat_score | programOfStudy | rcd_Created | rcd_Updated | +-----------+------------------------+-----------+------------------+---------------------+---------------------+ | 1 | Monique Davis | 400 | Literature | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 2 | Teri Gutierrez | 800 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 3 | Spencer Pautier | 1000 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 4 | Louis Ramsey | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 5 | Alvin Greene | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 6 | Sophie Freeman | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 7 | Edgar Frank "Ted" Codd | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | | 8 | Donald D. Chamberlin | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | | 9 | Raymond F. Boyce | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | +-----------+------------------------+-----------+------------------+---------------------+---------------------+ 9 rows in set (0.00 sec)

Λάβετε λίστα με τα πεδία σπουδών

SELECT DISTINCT programOfStudy FROM student;
+------------------+ | programOfStudy | +------------------+ | Literature | | Programming | | Computer Science | +------------------+ 3 rows in set (0.00 sec)

Όπως με όλα αυτά τα πράγματα SQL υπάρχουν πολύ περισσότερα από αυτά που περιλαμβάνονται σε αυτόν τον εισαγωγικό οδηγό.

Ελπίζω αυτό τουλάχιστον να σας δώσει αρκετά για να ξεκινήσετε.

Ανατρέξτε στο εγχειρίδιο για τον διαχειριστή της βάσης δεδομένων σας και διασκεδάστε δοκιμάζοντας μόνοι σας διαφορετικές επιλογές.

SQL Επιλέξτε στη δήλωση

Η SELECT INTOδήλωση είναι ένα ερώτημα που σας επιτρέπει να δημιουργήσετε έναν νέο πίνακα και να το συμπληρώσετε με το σύνολο αποτελεσμάτων του a SELECT statement. Για να προσθέσετε δεδομένα σε έναν υπάρχοντα πίνακα, ανατρέξτε στη δήλωση INSERT INTO.

SELECT INTO μπορεί να χρησιμοποιηθεί όταν συνδυάζετε δεδομένα από διάφορους πίνακες ή προβολές σε νέο πίνακα.1 Ο αρχικός πίνακας δεν επηρεάζεται.

Η γενική σύνταξη είναι:

SELECT column-names INTO new-table-name FROM table-name WHERE EXISTS (SELECT column-name FROM table-name WHERE condition)

Αυτό το παράδειγμα δείχνει ένα σύνολο πίνακα που "αντιγράφηκε" από τον πίνακα "Προμηθευτής" σε ένα νέο που ονομάζεται SupplierUSA το οποίο κρατά το σετ που σχετίζεται με τη χώρα στήλης αξίας "ΗΠΑ".

SELECT * INTO SupplierUSA FROM Supplier WHERE Country = 'USA';

Αποτελέσματα : 4 σειρές επηρεάστηκαν 2

IDCompanyNameContactNameCityCountryPhone2New Orleans Cajun DelightsShelley BurkeNew OrleansUSA (100) 555-48223Grandma Kelly's HomesteadRegina MurphyAnn ArborUSA (313) 555-573516Bigfoot Breweries

Ανατρέξτε στο εγχειρίδιο για τον διαχειριστή της βάσης δεδομένων σας και διασκεδάστε δοκιμάζοντας μόνοι σας διαφορετικές επιλογές.

Εισαγωγή SQL στη δήλωση

Για να εισαγάγετε μια εγγραφή σε έναν πίνακα, χρησιμοποιείτε τη INSERT INTOδήλωση.

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

INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);

Ο άλλος τρόπος είναι η εισαγωγή τιμών σε όλες τις στήλες στον πίνακα, δεν είναι απαραίτητο να καθορίσετε τα ονόματα των στηλών. Η σύνταξη είναι:

INSERT INTO table_name VALUES (value1, value2, value3, ...);

Ακολουθεί ένα παράδειγμα εισαγωγής μιας εγγραφής στον πίνακα Πρόσωπο με τους δύο τρόπους:

INSERT INTO Person VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’);

Και

INSERT INTO Person(Id, Name, DateOfBirth, Gender) VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’);

Ορισμένες εκδόσεις SQL (για παράδειγμα, MySQL) υποστηρίζουν την εισαγωγή πολλαπλών σειρών ταυτόχρονα. Για παράδειγμα:

INSERT INTO Person(Id, Name, DateOfBirth, Gender) VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’), (2, ‘Paul McCartney’, ‘1942-06-18’, ‘M’), (3, ‘George Harrison’, ‘1943-02-25’, ‘M’), (4, ‘Ringo Starr’, ‘1940-07-07’, ‘M’)

Σημειώστε ότι ολόκληρο το αρχικό ερώτημα παραμένει άθικτο - προσθέτουμε απλώς σε σειρές δεδομένων που κωδικοποιούνται από παράθεση και διαχωρίζονται με κόμματα.

Εισαγωγή SQL στο Select Statement

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

Η INSERT INTO SELECTδήλωση συνδυάζει INSERT INTOκαι SELECTδηλώσεις και μπορείτε να χρησιμοποιήσετε τις προϋποθέσεις που θέλετε. Η σύνταξη είναι:

INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition;

Εδώ είναι ένα παράδειγμα που εισάγει στον πίνακα Πρόσωπο όλων των ανδρών μαθητών από τον πίνακα Φοιτητές.

INSERT INTO Person(Id, Name, DateOfBirth, Gender) SELECT Id, Name, DateOfBirth, Gender FROM Students WHERE Gender = ‘M’

Άλλοι πόροι SQL:

  • Πλήρες μάθημα βίντεο SQL και βάσεων δεδομένων
  • Βασικές εντολές SQL που πρέπει να γνωρίζετε