Κάντε όριο Εγγραφή MySQL

ψήφοι
-1

Εδώ στον κώδικά μου δεν μπορώ να κάνω το όριο για κάθε εντάχθηκαν πίνακα, βλέπω πάντα Σφάλμα: SQLSTATE [42000]: Σφάλμα σύνταξης ή παραβίασης πρόσβασης: 1064 Έχετε ένα λάθος στη σύνταξη SQL σας? ελέγξτε το εγχειρίδιο που αντιστοιχεί στην έκδοση του διακομιστή MariaDB για τη σωστή σύνταξη για χρήση κοντά στο «INNER JOIN products_images ΓΙΑ products.id = products_images.product_id ΟΡΙΟ 1» στη γραμμή 4

SELECT products_images.image as products_image, products_description.name as products_name, products_details.price as products_price, products.id as products_id
FROM products
INNER JOIN products_description ON products.id=products_description.product_id LIMIT 1
INNER JOIN products_images ON products.id=products_images.product_id LIMIT 1
INNER JOIN products_details ON products.id=products_details.product_id LIMIT 1
Δημοσιεύθηκε 27/11/2018 στις 17:33
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
0

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

Κάνοντας μερικές υποθέσεις σχετικά με το αποτέλεσμα που θέλετε, ένα απλό παράδειγμα θα πρέπει να αντικαθιστά

INNER JOIN products_description ON products.id=products_description.product_id LIMIT 1

με

INNER JOIN (SELECT * FROM products_description AS d WHERE d.product_id = product.id ORDER BY d.id DESC LIMIT 1) AS pd

Δεν θα συνιστούσα αυτό το ακριβές υποερώτημα αν και συσχετισμένες υποερωτήματα (το υποερώτημα του ΠΟΥ αναφορές το εξωτερικό ερώτημα) είναι συνήθως μάλλον αναποτελεσματική? θα εκτελεστεί ξεχωριστά για κάθε γραμμή σε products. Συνήθως, όπως υπο-ερωτήσεις θα πρέπει να βρουν το «πρώτα για κάθε» συμπεριλαμβανομένων (και συχνά ομαδοποίηση για) την ταυτότητα του «κάθε» και στη συνέχεια να ενωθούν σε αυτό το id? όπως ότι αποφεύγει δαπανηρή συσχέτιση.

Απαντήθηκε 27/11/2018 στις 18:03
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more