2016-03-23 3 views
2

Ich brauche aus Tarantool alle Daten durch zwei Werte aus einem Raum auswählen. Wie kann ich eine Anfrage an tarantool wie in mysql durchführen?Wie kann ich eine Anfrage an tarantool wie in mysql durchführen?

select from aaa where a=1a22cadbdb or a=7f626e

Jetzt kann ich zwei Anfragen stellen:

box.space.logs:select({'1a22cadbdb'}) 
box.space.logs:select({'7f626e0123'}) 

, aber ich weiß nicht, wie Ergebnis in eine verschmelzen, (

Antwort

2

folgenden Code Druckfeld [0] bis lua Tabelle

a = box.space.logs:select({'1a22cadbdb'}) 
b = box.space.logs:select({'7f626e0123'}) 
c = { field_1 = a[0], field_2 = b[0] } 

Die Auswahl Rückkehr Tupel oder Tupel, so dass Sie Wert extrahieren kann über [].

Weitere Details zu wählen: http://tarantool.org/doc/book/box/box_index.html?highlight=select#lua-function.index_object.select

Mehr Details über Tupel: http://tarantool.org/doc/book/box/box_tuple.html?highlight=tuple#lua-module.box.tuple

-1

Für mich ist diese Arbeit gut, müssen aber Scheck für die Rückkehr machen von der ersten wählen:

local res = {} 
for k, v in pairs (box.space.email:select({email})[1]) do 
    if type(v) == 'string' then 
     table.insert(res, box.space.logs:select({v})[1]) 
    end 
end