Εμφάνιση ενός μόνο μηνύματος
  #2  
Παλιά 31-01-14, 15:33
kapetang Ο χρήστης kapetang δεν είναι συνδεδεμένος
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Χρήστο, αν κατάλαβα το ζητούμενο, δεν υπάρχει πρόβλημα.

Αν ο πίνακας M έχει πρωτεύον κλειδί το mID, τύπου αυτόματης αρίθμησης και πεδία τα mF1, mF2 το ερώτημα:

INSERT INTO M ( mID, mF1, mF2 ) SELECT nID, nF1, nF2 FROM N;

θα προσαρτήσει τις εγγραφές του πίνακα N στον M, χωρίς καμία αλλαγή στις τιμές των πεδίων nID, nF1 και nF2.

Διευκρινίζεται ότι τα πεδία nID, nF1 και nF2 του N αντιστοιχούν στα mID, mF1 και mF2 του πίνακα M.

Αν τα πεδία του πίνακα N έχουν ίδια ονόματα με τα πεδία του M, που μάλλον ισχύει στην περίπτωσή σου, το ερώτημα θα μπορούσε να απλοποιηθεί στο εξής:

INSERT INTO M SELECT * FROM N;

Φυσικά για να εισαχθεί μία εγγραφή του N στον M, δεν πρέπει να δημιουργούνται διπλότυπες τιμές στο πρωτεύον κλειδί mID (οι τιμές του nID δεν πρέπει να υπάρχουν στη στήλη mID του πίνακα M).

Φιλικά/Γιώργος
Απάντηση με παράθεση