正規化された sqlite データベースでかなり複雑なクエリ (複数の結合) があります。クエリは、SELECT *
自動化された属性選択ロジックを有効にするために実行します (したがって、「*」を削除することはできません)。
私が抱えている問題は、結果セットに同じ属性名を持つ複数の列が含まれていることです。たとえば、クエリ内の各テーブルに共通する 1 つの属性は「_id」です。呼び出しに行くと"cursor.getColumnIndex("_id")"
、返される値は常に"_id"
結果セットの列リストの最後の属性のインデックスです (つまり、必要なものではありません)。SQL エイリアス プレフィックスを次のように使用できるようにしたいのです cursor.getColumnIndex("A._id")
が、うまくいきません。
質問
cursor.getColumnIndex(AttributeName)
最後の「AttributeName」のインデックスを返すようです。誰でもこれを確認できますか?- また、「AttributeName」で最初の属性のインデックスを返す方法に関する提案はありますか? 「AttributeName」を持つX番目の属性の方が良いですか?