2 Stimmen

Limit basierend auf der Anzahl

Ich verwende eine Tabelle für Kategorien und Inhalte.

Der Wert der Kategorien im Feld pid ist 0.

Zum Beispiel:

Beispiel Tabelle

--------------------------
id | pid | name
--------------------------
1  | 0   | Some catgory 1
--------------------------
2  | 1   | Some content of first category
--------------------------
3  | 1   | Other content of first cat
--------------------------
4  | 0   | Second category
--------------------------
5  | 0   | Category number 3
--------------------------
6  | 5   | Content of category 3
--------------------------
7  | 4   | Content of 2 cat
--------------------------
8  | 5   | Content of 3 cat
--------------------------
9  | 5   | Other Content of 3 cat
--------------------------
10 | 5   | One more content of 3 cat
--------------------------
11 | 4   | Content of 2 cat
--------------------------
12 | 5   | One more content of 3 cat
--------------------------
13 | 1   | First cat content
--------------------------
14 | 1   | Other content of 1 cat

Wie erhalte ich alle Kategorien und 10 Inhaltselemente in einer Abfrage?

5voto

Mark Byers Punkte 761508

Um die Ergebnisse von zwei separaten Abfragen in einer einzigen Abfrage zu erhalten, verwenden Sie UNION ALL:

SELECT id, pid, name
FROM yourtable
WHERE pid = 0
UNION ALL
(
    SELECT id, pid, name
    FROM yourtable
    WHERE pid <> 0
    LIMIT 10
)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X