hier noch zum limit und order by:Sim.find(:all, :conditions => ["term1_id IN (?)", @term], :order => "pos DESC", :limit => 10)
gruß manuel Am 24.11.2008 um 14:38 schrieb Ma Sch:
Hallo zusammen,als erstes möchte ich allen danken, die sich hier ein wenig Zeit nehmen,um mir zu helfen. Ich habe folgendes Schema : class Term < ActiveRecord::Base has_many :sims end class Sim < ActiveRecord::Base belongs_to :term1, :class_name => "Term" belongs_to :term2, :class_name => "Term" endIch denke die Migrations sind hierbei eher unwichtig. Jedenfalls möchteich folgende Abfragen durchführen : t = ["NewYork","Boston","US"] @term = Array.new @sub_terms = Array.new t.each do |term| @termi = Term.find_by_bezeichnung(term) @term << @termi.id end puts "############################################" @term.each do |termid| li = Sim.find(:all, :conditions => {:term1_id => termid}).each do |li| @sub_terms << li.term2.name end end puts @sub_terms.uniq Wie ihr seht speichere ich meine Ergebnisse wieder als Array ab, ka ob das so sinnvoll ist oder nicht. Frage ist nun kann ich das irgendwieperformanter gestalten? Bis jetzt ist das ja zweimal find und unzähligeeach do Blöcke. Dann würde ich noch gerne wissen ob man in der Anfrage Beispielsweise wenn ich in der Tabelle Sims eine Spalte value (int Wert) habe, nach diesem Wert die Erbebnisse sortieren kann und dann nur die ersten 10 Ergebnisse ausgebe. In SQL gibt es ja sowas wie ORDER_BY value DESC LIMIT 10 oder so ähnlich. -- Posted via http://www.ruby-forum.com/. _______________________________________________ rubyonrails-ug mailing list [email protected] http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
PGP.sig
Description: This is a digitally signed message part
_______________________________________________ rubyonrails-ug mailing list [email protected] http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
