qt中如何从QSqlQuery中获取第n条记录
How to get the n-th record from QSqlQuery in qt
我尝试从 sqlite 获取数据,我需要将查询中的第 n 和第 (n+1) 行附加到我的列表(列表中的每个项目包含第 n 和 (n+1) )-th 行) 这是我到目前为止的代码
QSqlQuery query("SELECT country FROM artist");
while(query.next()){
m_datalist.append(new DataObject(query.value("country"),this_field _should_be_the_next_row_with_value contry));
}
如何同时从查询中获取第 n 行和第 (n+1) 行?
添加计数器变量:
int i=0;
while(query.next()){
if(i==n || i==n+1)
{
m_datalist.append(...);
}
i++;
}
或者您可以 select 只有您需要的记录:
QSqlQuery query("SELECT country FROM artist LIMIT 2 OFFSET "+QString::number(n));
只需将之前的值保存在一个变量中:
QString previous = ""; // whatever the first one should be
while (query.next()) {
QString nth = query.value(...);
...append(nth, previous);
previous = nth;
}
我尝试从 sqlite 获取数据,我需要将查询中的第 n 和第 (n+1) 行附加到我的列表(列表中的每个项目包含第 n 和 (n+1) )-th 行) 这是我到目前为止的代码
QSqlQuery query("SELECT country FROM artist");
while(query.next()){
m_datalist.append(new DataObject(query.value("country"),this_field _should_be_the_next_row_with_value contry));
}
如何同时从查询中获取第 n 行和第 (n+1) 行?
添加计数器变量:
int i=0;
while(query.next()){
if(i==n || i==n+1)
{
m_datalist.append(...);
}
i++;
}
或者您可以 select 只有您需要的记录:
QSqlQuery query("SELECT country FROM artist LIMIT 2 OFFSET "+QString::number(n));
只需将之前的值保存在一个变量中:
QString previous = ""; // whatever the first one should be
while (query.next()) {
QString nth = query.value(...);
...append(nth, previous);
previous = nth;
}