2016-03-23 12 views
2

Tarantool tüm veriyi bir boşluktan iki değerle seçmem gerekiyor. Mysql gibi tarantool isteğini nasıl yapabilirim?Mysql gibi tarantool isteğini nasıl yapabilirim?

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

Şimdi ben iki talep yapabilirsiniz:

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

ama içine birleştirme sonucunu nasıl bilmiyorum; (

cevap

2

lua masaya

kod birleştirme alanına [0] takiben
a = box.space.logs:select({'1a22cadbdb'}) 
b = box.space.logs:select({'7f626e0123'}) 
c = { field_1 = a[0], field_2 = b[0] } 

seçme dönüş tuple veya [] aracılığıyla değer ayıklamak böylece tuples.

seçme konusunda

Diğer ayrıntılar: başlığın hakkında http://tarantool.org/doc/book/box/box_index.html?highlight=select#lua-function.index_object.select

Diğer ayrıntılar: http://tarantool.org/doc/book/box/box_tuple.html?highlight=tuple#lua-module.box.tuple

-1
bana bu iş para cezası için

ama seçmek birinciden dönüş için çek yapmak gerekir:

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