【问题标题】:How to match column of two tables in sqlite and depending on matching how to retrieve data?如何在sqlite中匹配两个表的列并取决于匹配如何检索数据?
【发布时间】:2013-10-28 02:42:15
【问题描述】:

这是我的两张桌子-

private static final  String SQL_CREATE_RETAIL_DB_PRODUCT =
                        "CREATE TABLE " + DatabaseContract.RetailDatabaseEntry.TABLE_NAME_PRODUCT + " (" +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_PRODUCT_ID + INTEGER_TYPE + COMMA_SEP +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_NAME + TEXT_TYPE + COMMA_SEP +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_IMAGE + BLOB_TYPE + COMMA_SEP +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_QUANTITY + INTEGER_TYPE + COMMA_SEP +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_PRICE + INTEGER_TYPE +
                                        " )";
private static final  String SQL_CREATE_RETAIL_DB_SCAN =
                        "CREATE TABLE " + DatabaseContract.RetailDatabaseEntry.TABLE_NAME_SCAN + " (" +
                                DatabaseContract.RetailDatabaseEntry.COLUMN_PRODUCTID_ID + INTEGER_TYPE + ")";

我想将产品表的列 productid 与扫描表的 productid 匹配。 并且根据匹配我必须检索数据。

请给我建议解决方案,因为我是 android 新手。

【问题讨论】:

    标签: android


    【解决方案1】:

    从第一个表中检索产品 id 的值,并使用 where 子句示例 select * from where productid = (第一个表的产品 id) 对第二个表进行查询

    【讨论】:

    • 如何在选择查询中从第一个表中获取产品 ID 的值。我不知道,因为我是 android 中的 sqlite 数据库的新手。
    • 你告诉我如何检索数据。但告诉我如何匹配这两列。
    • DatabaseHelper dbhelper = new DatabaseHelper(context);
    • dbHelper = new DatabaseHelper(this); db = dbHelper.getReadableDatabase();光标 cursor = db.query(TableName,null, null, null, null, null, null); while (cursor.moveToNext()) { productId = cursor.getString(cursor.getColumnIndex(productId)); }
    • 您可以像这样在第二个表中使用产品 id db.query(TableName,null, "productId = ?", new String[]{productId of first table}, null, null, null); if(cursor.moveToFirst()){ 获取所有列值
    猜你喜欢
    • 2016-11-03
    • 2019-12-24
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    相关资源
    最近更新 更多