2011-01-01 18 views

Antwort

1

Sie können innere simulieren verbinden und nur aktualisieren erste Tabelle, wie

set @pos:=0; 
update 
    stories a, 
    (select topic, @pos:[email protected]+1 as new_position 
    from stories 
    where newstype=2 group by topic 
) as b 
set a.position=b.new_position 
where a.topic=b.topic; 
0

Sie können immer versuchen, die ersten

`SELECT `topic` FROM `stories` WHERE `newstype`='2' GROUP BY `topic` 

Abfrage ausgeführt wird, und dann in ein Format für den Einsatz in dem IN() in der Hauptabfrage Parsen.

Oh, Moment, ich dachte, ich schaute auf PHP, nicht die gesamte Frage Auflistung.