在sqlite android中可以对列的数据进行混洗吗?我有两个列,我想在安卓click event
上的sqlite中混洗alph
num alph
------------
1 a
2 b
3 c
4 d
这是我的代码
public class MainActivity extends Activity {
SQLiteDatabase db;
String a,c;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
db=openOrCreateDatabase("dat", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS rk(num integer,alph char);");
db.execSQL("INSERT INTO rk VALUES('1','a');");
db.execSQL("INSERT INTO rk VALUES('2','b');");
db.execSQL("INSERT INTO rk VALUES('3','c');");
db.execSQL("INSERT INTO rk VALUES('4','d');");
db.execSQL("INSERT INTO rk VALUES('5','e');");
}
public void disp(View view){
EditText ed;
ed=(EditText)findViewById(R.id.editText1);
a=ed.getText().toString();
Cursor b=db.rawQuery("SELECT alph FROM rk WHERE num='a';",null);
//System.out.println(b.getString(0));
c=b.toString();
System.out.println("a2");
System.out.println(c);
Builder builder=new AlertDialog.Builder(MainActivity.this);
builder.setMessage(c);
AlertDialog alert=builder.create();
alert.show();
}
发布于 2013-09-01 20:57:50
你的意思是得到一个随机的行吗?在MySQL中,您可以通过以下方式完成此操作:
select alph from rk order by rand() limit 0,1
我认为这个sql在SQLite中也可以以相同或相似的形式工作。如果你想让所有行按随机顺序排列,只需去掉"limit 0,1“部分,如下所示:
select alph from rk order by rand()
发布于 2015-01-27 16:43:06
SELECT * FROM table ORDER BY RANDOM()
发布于 2015-02-18 02:26:02
select * from tablename order by random()
//记住,对于sqllite,rand()是不存在的,取而代之的是随机数
https://stackoverflow.com/questions/18558557
复制相似问题