So wählen Sie Zeilen von einer partition in MySQL
Ich machte meine partition 300MB Tisch und versucht zu machen, wählen Sie Abfrage aus p0
partition mit diesem Befehl
SELECT * FROM employees PARTITION (p0);
Aber ich erhalte folgende Fehlermeldung
ERROR 1064 (42000): You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near '(p0)' at line 1
How to write select-Abfrage, um Daten aus bestimmten partition?
- Überprüfen Sie in diesem post: dba.stackexchange.com/questions/23138/.... Es ist nicht unterstützt.
- Warum müssen Sie das Konstrukt? Kannst du nicht einfach eine WHERE-Klausel hinzufügen, dass trifft p0?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Abhängig von Ihrer MySql-version
PARTITION
Schlüsselwort nicht vorhanden ist, bis MySQL 5.6.2. Sie wäre mit MySQL 5.5 oder auch 5.1, aber nicht 5.6. Für den Fall, Sie sind mitMySQL 5.1
, dann können Sie einen workaround wie unterHinweis : Die obige Lösung ist nur Abhilfe zu bekommen, die Sie wünschen Ausgabe.
Können Sie auch versuchen, diese Abfrage zu zählen, Gesamtzahl der Zeilen, die Sie für Ihre partition.
Hinweis : Sie ändern können
table_schema = schema()
zutable_schema = 'yourschema'
select * from employees p0;
- das ist komplett falsch! Es gibt alle Ergebnisse zurück, da p0 behandelt wird, als der Tabellen-alias und nicht dem Namen der partition.Eigentlich seit MySQL 5.6 die unterstützte syntax ist:
Du hast Recht, die explizite Auswahl der PARTITION wird nicht unterstützt in Version 5.1.54. Sehen diese post
Die richtige form des
query
ist als unten, es funktioniert für mich in Ordnung.Nicht sicher, warum meine Antwort war umgewandelt in einen Kommentar 😉
Setzen es wieder. Überprüfen Sie diese Frage auf DBA. Es ist nicht unterstützt in der aktuellen version von MYSQL.
Können Sie auch prüfen, MYSQL-dev Artikel