プライマリ・インデックス
プライマリ・インデックス機能
#名前の通り
ソート順
順番
#最初に実施されるソートのタイプ null false true #次の数字 1 10 4.0 #次のテキスト "a" #同じ文字であれば小文字一番、大文字二番 "A" "aa" "b" "B" "ba" "bb" #次の配列 ["a"] ["b"] #違う要素と比較されるまでソートされた要素 ["b","c"] ["b","c", "a"] ["b","d"] ["b","d", "e"] #最後にオブジェクト、キー・バリューのリストを違うリストと比較されるまでソートする {a:1} {a:2} {b:1} {b:2} {b:2, a:1} {b:2, c:2}
animaldbドキュメント内容
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs
返却値
{ "total_rows":11, "offset":0, "rows":[ {"id":"_design\/views101","key":"_design\/views101","value":{"rev":"12-dfa39d5771438be0671b9aeb9cfaf03f"}}, {"id":"aardvark","key":"aardvark","value":{"rev":"3-fe45a3e06244adbe7ba145e74e57aba5"}}, {"id":"badger","key":"badger","value":{"rev":"4-51aa94e4b0ef37271082033bba52b850"}}, {"id":"elephant","key":"elephant","value":{"rev":"3-f812228f45b5f4e496250556195372b2"}}, {"id":"giraffe","key":"giraffe","value":{"rev":"3-7665c3e66315ff40616cceef62886bd8"}}, {"id":"kookaburra","key":"kookaburra","value":{"rev":"4-6038cf35dfe1211f85484dec951142c7"}}, {"id":"lemur","key":"lemur","value":{"rev":"3-552d9dbf91fa914a07756e69b9ceaafa"}}, {"id":"llama","key":"llama","value":{"rev":"4-631ea89ca94b23a3093c1ef7dfce10e0"}}, {"id":"panda","key":"panda","value":{"rev":"2-f578490963b0bd266f6c5bbf92302977"}}, {"id":"snipe","key":"snipe","value":{"rev":"3-4b2fb3b7d6a226b13951612d6ca15a6b"}}, {"id":"zebra","key":"zebra","value":{"rev":"3-750dac460a6cc41e6999f8943b8e603e"}} ] }
検索オプション
limit : 返却値を制限する
skip: 指定の返却値を飛ばす(ページネーションなどに使うとよし)
skip
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs?skip=5
返却値
{ "total_rows":11, "offset":5, "rows":[ {"id":"kookaburra","key":"kookaburra","value":{"rev":"4-6038cf35dfe1211f85484dec951142c7"}}, {"id":"lemur","key":"lemur","value":{"rev":"3-552d9dbf91fa914a07756e69b9ceaafa"}}, {"id":"llama","key":"llama","value":{"rev":"4-631ea89ca94b23a3093c1ef7dfce10e0"}}, {"id":"panda","key":"panda","value":{"rev":"2-f578490963b0bd266f6c5bbf92302977"}}, {"id":"snipe","key":"snipe","value":{"rev":"3-4b2fb3b7d6a226b13951612d6ca15a6b"}}, {"id":"zebra","key":"zebra","value":{"rev":"3-750dac460a6cc41e6999f8943b8e603e"}} ] }
limit
$ curl https://{アカウント名}:{パスワード}@{アカウント名.cloudant.com/animaldb/_all_docs?limit=2
返却値
{ "total_rows":11, "offset":0, "rows":[ {"id":"_design\/views101","key":"_design\/views101","value":{"rev":"12-dfa39d5771438be0671b9aeb9cfaf03f"}}, {"id":"aardvark","key":"aardvark","value":{"rev":"3-fe45a3e06244adbe7ba145e74e57aba5"}} ] }
limit + skip
skip+limitでも同じ結果
&をエスケープする
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs?limit=3\&skip=3
返却値
{ "total_rows":11, "offset":0, "rows":[ {"id":"elephant","key":"elephant","value":{"rev":"3-f812228f45b5f4e496250556195372b2"}}, {"id":"giraffe","key":"giraffe","value":{"rev":"3-7665c3e66315ff40616cceef62886bd8"}}, {"id":"kookaburra","key":"kookaburra","value":{"rev":"4-6038cf35dfe1211f85484dec951142c7"}} ] }
startkey(始まりのテキスト) + endkey(終わりのテキスト)
&はエスケープが必要
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs?startkey=\"d\"\&endkey=\"giraffe\"
返却値
{ "total_rows":11, "offset":7, "rows":[ {"id":"elephant","key":"elephant","value":{"rev":"3-f812228f45b5f4e496250556195372b2"}}, {"id":"giraffe","key":"giraffe","value":{"rev":"3-7665c3e66315ff40616cceef62886bd8"}} ] }
key
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs?key=\"llama\"
返却値
{ "total_rows":11, "offset":10, "rows":[ {"id":"llama","key":"llama","value":{"rev":"4-631ea89ca94b23a3093c1ef7dfce10e0"}} ] }
一覧
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/llama
返却値
{ "_id":"llama", "_rev":"4-631ea89ca94b23a3093c1ef7dfce10e0", "min_weight":130, "max_weight":200, "min_length":1.6999999999999999556, "max_length":1.8000000000000000444, "latin_name":"Lama glama", "wiki_page":"http:\/\/en.wikipedia.org\/wiki\/Llama", "class":"mammal", "diet":"herbivore" }
include_docs
レコード全部を取得する
$ curl https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs?limit=2\&skip=3\&include_docs=true
返却値
{ "total_rows":11, "offset":3, "rows":[ {"id":"elephant","key":"elephant","value":{"rev":"3-f812228f45b5f4e496250556195372b2"}, "doc": {"_id":"elephant","_rev":"3-f812228f45b5f4e496250556195372b2","wiki_page":"http:\/\/en.wikipedia.org\/wiki\/African_elephant","min_weight":4700,"max_weight":6050,"min_length":3.2000000000000001776,"max_length":4,"class":"mammal","diet":"herbivore"}}, {"id":"giraffe","key":"giraffe","value":{"rev":"3-7665c3e66315ff40616cceef62886bd8"}, "doc": {"_id":"giraffe","_rev":"3-7665c3e66315ff40616cceef62886bd8","min_weight":830,"min_length":5,"max_weight":1600,"max_length":6,"wiki_page":"http:\/\/en.wikipedia.org\/wiki\/Giraffe","class":"mammal","diet":"herbivore"} } ] }
配列をPOSTして抽出する
$ curl -d '{"keys": ["elephant", "snipe", "panda"]}' -X POST https://{アカウント名}:{パスワード}@{アカウント名}.cloudant.com/animaldb/_all_docs -H "Content-Type:application/json"
返却値
{ "total_rows":11, "offset":0, "rows":[ {"id":"elephant","key":"elephant","value":{"rev":"3-f812228f45b5f4e496250556195372b2"}}, {"id":"snipe","key":"snipe","value":{"rev":"3-4b2fb3b7d6a226b13951612d6ca15a6b"}}, {"id":"panda","key":"panda","value":{"rev":"2-f578490963b0bd266f6c5bbf92302977"}} ] }