在一个查询中检索一行的两个值

时间:2012-06-08 16:56:36

标签: javascript sql database uitableview appcelerator

因此,我要做的是使用来自SQL数据库的信息填充表,在本例中称为entity_info。我需要表格中的两个值,entity_categoryentity_name

在填充表格的同时,我做了类似的事情:

var rows = db.execute('SELECT DISTINCT entity_name FROM entity_info');
var rows2 = db.execute('SELECT entity_category FROM entity_info');

while (rows.isValidRow()) {
    //herp derp herp creating a table...
    var name = Ti.UI.createLabel({
        text : rows.fieldByName('entity_name'),
        color : '#666',
        left : '50dp',
        font : {
            fontSize : 22,
            fontWeight : 'bold',
            fontFamily : 'Arial'
        },
        backgroundColor : '#fff'
    });
    var category = Ti.UI.createLabel({
        text : rows2.fieldByName('entity_category'),
        color : '#666',
        left : '60dp',
        top : '40dp',
        font : {
            fontSize : 13,
            fontFamily : 'Arial',
            fontStyle : 'italic'
        }
    });
    rows.next();
    rows2.next();
}

但是,这对我的目的不起作用,因为它将两个语句分开,并将名称的顺序混淆为类别匹配。所以,我需要做的是接受一个请求(并使用单个rows变量),然后将其用于while语句并设置每个标签的文本。

谢谢!

1 个答案:

答案 0 :(得分:2)

您是否尝试在行和行2中组合SQL语句?

var rows: db.execute('SELECT DISTINCT entity_name, entity_category FROM entity_info');

并按原样使用行。