Μετακίνηση παλιών εγγραφών στο αρχείο με μία κίνηση — χωρίς συνθήκες ανταγωνισμού
Η αρχειοθέτηση παλιών παραγγελιών με δύο εντολές (εισαγωγή στο αρχείο, μετά διαγραφή από τον κύριο πίνακα) είναι επιρρεπής σε συνθήκες ανταγωνισμού: κάποιος μπορεί να εισαγάγει μια νέα εγγραφή που πληροί το κριτήριο ανάμεσα στα βήματα, ή ένα status μπορεί να αλλάξει. Ένα μοναδικό ερώτημα βασισμένο σε CTE το χειρίζεται ατομικά.
Μετακινήστε όλες τις πληρωμένες παραγγελίες (status = 'paid') που δημιουργήθηκαν πριν από την 1η Ιανουαρίου 2024 από τον orders στον orders_archive με μία μόνο εντολή, χωρίς ενδιάμεση κατάσταση. Το αρχείο πρέπει να λάβει τις στήλες id, status και amount.
Δείγμα αναμενόμενης εξόδου
Έτσι μοιάζει μια σωστή απάντηση — το πλήθος γραμμών της είναι δικό της, δεν χρειάζεται να ταιριάζει με τους πίνακες του σχήματος.
| id | amount | status |
|---|---|---|
| 1 | 100.00 | paid |
| 2 | 200.00 | paid |
| 3 | 150.00 | paid |
Συνδεθείτε για να δείτε το ιστορικό υποβολών
ΣύνδεσηΣυνδεθείτε για να χρησιμοποιήσετε τον AI Mentor
Σύνδεση