Ich habe 2 Tabellen:
Artikel:
ID INTEGER
...
Article_versions:
Artikel INTEGER
lang ENUM
Zeit TIMESTAMP
PRIMÄRSCHLÜSSEL (Artikel, Sprache, Zeit)
...
Ich möchte Felder aus Artikeln und Feldern aus der letzten Zeile Article_versions auswählen.
Sollte ich Join oder 2 Select-Anweisungen verwenden?
Und wie kann ich das tun?Zeile mit dem angegebenen Feldwert und den höchsten Wert in anderen Feld
0
A
Antwort
0
Es ist verwirrend, genau, welche Informationen Sie abrufen versuchen, aber wenn Sie eine bestimmte ID kennen, dann können Sie verwenden:
SELECT ID,lang,time
FROM articles,article_versions
WHERE articles.ID=<article_id_you_provide> AND
articles.ID=article_versions.article AND
article_versions.time = (SELECT max(time)
FROM article_versions
WHERE article=<article_id_you_provide>);
Lassen Sie mich wissen, wenn dies nicht der Fall ist, was Sie suchen, und ich kann revidiere meine Antwort weiter.
0
Unter der Annahme [Articles_versions] [Zeit] wäre die einzige eindeutige Spalte in der Sie folgende JOIN gesetzt zurückgegeben werden könnten.
SELECT [Articles].[ID], [Articles_versions].[article], [Articles_versions].[lang], MAX([Articles_versions].[time])
FROM Articles Inner Join Articles_versions ON [Articles].[ID] = [Articles_versions].[article]
GROUP BY [Articles].[ID], [Articles_versions].[article], [Articles_versions].[lang]
+0
das holt neueste Artikelversionen nicht. Also MAX (Zeit) ist das neueste, aber andere Felder von article_versions sind nicht – kravemir
Verwandte Themen
- 1. Wählen Sie die ganze Zeile mit dem höchsten Wert
- 2. Auswählen von CSV-Zeile mit dem höchsten Spaltenwert unter Zeilen mit dem gleichen Wert einer anderen Spalte in Python
- 3. Wert mit der höchsten Frequenz in einem bestimmten Feld
- 4. Meteor: Dokument mit dem höchsten Wert finden
- 5. Subset-Zeilen mit dem höchsten Wert aus mehreren Spalten
- 6. Subtrahiere zwei Daten mit passendem Feld und einen anderen spezifischen Feldwert in SQL Tabelle
- 7. Entsprechend dem ausgewählten Wert von Drop-Box muss ich den anderen Feldwert in Laravel 5 ändern?
- 8. Abfrage entweder Feld mit der höchsten Nummer
- 9. MySQL gibt einen anderen Wert als den maximalen Wert im angegebenen Beispielcode zurück
- 10. Ergebnis Dokumente mit dem gleichen Feldwert zu entfernen, basierend auf einem anderen Feldwert (ohne Aggregation)
- 11. Bash gab die Linie mit dem höchsten Wert aus
- 12. Den höchsten Wert eines Attributs mit ALL in SQLite finden
- 13. ein Feld mit dem Wert eines anderen Felds aktualisieren
- 14. R: Wie generiert man Vektoren mit dem höchsten Wert in jeder Zeile?
- 15. Wie man den Wert in einem Feld basierend auf Lookup-Wert in einem anderen Feld zurückgibt
- 16. SQL SELECT Zeile mit dem höchsten Wert wo Problem_ID ist gleich
- 17. nHibernate, Keine Zeile mit dem angegebenen Bezeichner existiert
- 18. SQL-Update wird nicht mit dem angegebenen Wert aktualisiert
- 19. VBA Filtern nach Zeilen mit dem höchsten Wert
- 20. PHP Mysql Feld Wert basierend auf einem anderen Feld Wert
- 21. Erste Taste mit dem höchsten Wert von Objekt
- 22. MYSQL DELETE Zeile, wenn doppelte Schlüssel in der gleichen Tabelle mit dem angegebenen Wert existiert
- 23. Wie erhält man den Feldwert der ausgewählten Zeile? GridView?
- 24. Wert aus dem einzeiligen Bereich in der angegebenen Spalte
- 25. Die Suche nach dem höchsten Wert in einer Enumeration
- 26. Finding Summe basierend auf mehreren Spalten aus einer Datei und zeigt den höchsten Wert und die entsprechende Zeile awk mit
- 27. Wie bekomme ich den höchsten Wert des Arrays mit PHP?
- 28. org.hibernate.ObjectNotFoundException: Keine Zeile mit dem angegebenen Bezeichner existiert: Einzeltabellenabfrage
- 29. SQL: Wie wählt man die Zeile mit dem Maximalwert und einer anderen Bedingung?
- 30. SQL Server: Gruppenzeilen mit demselben Wert und einer anderen Zeile
ja, es tut, was ich will. Aber was ist mit der Leistung, ist das nicht langsamer als beitreten oder es ist wie beitreten? – kravemir
gut tut es auf diese Weise ist ein Join in einem Sinne, weil es dauert das Kreuzprodukt der beiden Tabellen und die Where-Klauseln Filter. Der Grund, warum ich die Joinsyntax nicht verwendete, liegt darin, dass Ihr Fremdschlüssel in article_versions nicht den gleichen Namen wie Artikel hat, also wäre es auch unordentlich, einen natürlichen Join zu machen. –