機能サポート
この項では、MongoDBのためのOracle APIでサポートされているクライアントおよびサーバー機能について詳しく説明します。
MongoDBのためのOracle APIには、ロード・バランシングされた接続をサポートするMongoDBクライアントが必要です。次に、一部のクライアントドライバおよびツールの最小バージョンを示します:
- C 1.19.0
- C# 2.13.0
- Compass 1.28.1
- Database Tools 100.5.0 (
mongoexport、mongorestore、mongodumpなどを含む)
- Go 1.6.0
- Java 4.3.0
- MongoSH 0.15.6
- Node.jsドライバ4.1.0
- PyMongo 3.12.0 (Python言語用)
- Ruby 2.16.0
- Rust 2.1.0
これらのドライバは、https://www.mongodb.com/docs/drivers/からダウンロードできます。
データベース・コマンド
この項では、MongoDBのためのOracle APIでサポートされているMongoDBコマンドを示します。
| コマンド |
サポート(開始時期) |
ノート |
cloneCollectionAsCapped |
なし |
|
collMod |
なし |
|
collMod、expireAfterSeconds |
なし |
|
convertToCapped |
なし |
|
create |
19c |
|
createView |
26ai |
|
createIndexes |
26ai. No-op (19c) |
|
currentOp |
なし |
|
drop |
19c |
|
dropDatabase |
19c |
<p>現在のOracle Databaseスキーマ内のすべてのコレクションを削除します。スキーマ自体も削除(ドロップ)しません。</p> |
dropIndexes |
26ai. No-op (19c) |
|
filemd5 |
なし |
このコマンドは、MongoDBでは非推奨となっています。MD5は暗号的に安全とはみなされなくなったため、このコマンドの使用はお薦めしません。 |
getParameter |
19c |
サポートされているパラメータ: authenticationMechanisms |
killCursors |
19c |
サポートされているフィールド: cursors。 |
killOp |
なし |
|
listCollections |
19c |
|
listDatabases |
19c |
|
listIndexes |
19c |
|
reIndex |
No-op |
MongoDBバージョン6.0以降は非推奨になりました。 |
renameCollection |
26ai |
|
setParameter |
No-op |
|
validate |
19c |
|
repairDatabase |
No-op |
|
集計コマンド
| コマンド |
サポート(開始時期) |
ノート |
aggregate |
26ai |
|
count |
19c |
|
distinct |
19c |
|
mapReduce |
なし |
|
認証コマンド
| コマンド |
サポート(開始時期) |
ノート |
logout |
19c |
|
診断
| コマンド |
サポート(開始時期) |
ノート |
buildInfo |
19c |
Oracle Database API for MongoDBの現在のビルドに関する情報を返します。 |
collStats |
19c |
|
compact |
No-op |
|
connPoolStats |
なし |
|
connectionStatus |
19c |
|
dataSize |
26ai |
|
dbHash |
なし |
|
dbStats |
19c |
|
explain |
19c |
|
explain、executionStats |
19c |
|
features |
なし |
|
getLog |
No-op |
|
hostInfo |
19c |
|
listCommands |
19c |
|
ping |
19c |
|
profiler |
なし |
問合せプロファイリングにはSQLモニターを使用します。 |
serverStatus |
19c |
|
top |
なし |
|
whatsmyuri |
19c |
|
問合せおよび書込み操作
| コマンド |
サポート(開始時期) |
ノート |
| 変更ストリーム |
なし |
|
delete |
19c |
|
find |
19c |
|
findAndModify |
19c |
|
getLastError |
19c |
|
getMore |
19c |
|
getPrevError |
なし |
|
GridFS |
19c |
|
insert |
19c |
|
parallelCollectionScan |
なし |
|
resetError |
19c |
|
update |
19c |
|
ロール管理コマンド
| コマンド |
サポート(開始時期) |
ノート |
createRole |
なし |
|
dropRole |
なし |
|
dropAllRolesFromDatabase |
なし |
|
grantRolesToRole |
なし |
|
revokePrivilegesFromRole |
なし |
|
updateRole |
なし |
|
rolesInfo |
なし |
|
レプリケーション・コマンド
| コマンド |
サポート(開始時期) |
ノート |
hello |
19c |
|
isMaster |
19c |
|
replSetGetStatus |
No-op |
無視されます。該当なし。 |
セッション・コマンド
| コマンド |
サポート(開始時期) |
ノート |
abortTransaction |
19c |
|
commitTransaction |
19c |
|
endSessions |
19c |
|
killAllSessions |
19c |
|
killAllSessionsByPattern |
19c |
|
killSessions |
19c |
|
refreshSessions |
19c |
|
startSession |
19c |
|
ユーザー管理コマンド
| コマンド |
サポート(開始時期) |
ノート |
createUser |
なし |
|
dropAllUsersFromDatabase |
なし |
|
dropUser |
なし |
|
grantRolesToUser |
なし |
|
revokeRolesFromUser |
なし |
|
updateUser |
なし |
|
userInfo |
なし |
|
シャーディング・コマンド
| コマンド |
サポート(開始時期) |
ノート |
abortReshardCollection |
なし |
該当なし。 |
addShard |
なし |
該当なし。 |
addShardZone |
なし |
該当なし。 |
balancerCollectionStatus |
なし |
該当なし。 |
balancerStart |
なし |
該当なし。 |
balancerStatus |
なし |
該当なし。 |
balancerStop |
なし |
該当なし。 |
checkShardingIndex |
なし |
該当なし。 |
clearJumboFlag |
なし |
該当なし。 |
cleanupOrphaned |
なし |
該当なし。 |
cleanupReshardCollection |
なし |
該当なし。 |
commitReshardCollection |
なし |
該当なし。 |
enableSharding |
なし |
該当なし。 |
flushRouterConfig |
なし |
該当なし。 |
getShardMap |
なし |
該当なし。 |
getShardVersion |
なし |
該当なし。 |
isdbGrid |
なし |
該当なし。 |
listShards |
なし |
該当なし。 |
medianKey |
なし |
該当なし。 |
moveChunk |
なし |
該当なし。 |
movePrimary |
なし |
該当なし。 |
mergeChunks |
なし |
該当なし。 |
refineCollectionShardKey |
なし |
該当なし。 |
removeShard |
なし |
該当なし。 |
removeShardFromZone |
なし |
該当なし。 |
reshardCollection |
なし |
該当なし。 |
setAllowMigrations |
なし |
該当なし。 |
setShardVersion |
なし |
該当なし。 |
shardCollection |
なし |
該当なし。 |
shardingState |
なし |
該当なし。 |
split |
なし |
該当なし。 |
splitVector |
なし |
該当なし。 |
unsetSharding |
なし |
該当なし。 |
updateZoneKeyRange |
なし |
該当なし。 |
演算子
配列問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$all |
19c |
|
$elemMatch |
19c |
|
$size |
19c |
|
ビット単位問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$bitsAllSet |
なし |
|
$bitsAnySet |
なし |
|
$bitsAllClear |
なし |
|
$bitsAnyClear |
なし |
|
比較問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$eq |
19c |
|
$gt |
19c |
|
$gte |
19c |
|
$lt |
19c |
|
$lte |
19c |
|
$ne |
19c |
|
$in |
19c |
|
$nin |
19c |
|
要素問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$exists |
19c |
|
$type |
19c |
|
評価問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$expr |
なし |
|
$jsonSchema |
なし |
|
$mod |
26ai |
|
$regex |
19c |
|
$text |
19c |
|
$where |
なし |
サーバー側のJavaScriptは非推奨となっています。MongoDBドキュメントを参照してください。 |
地理空間問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$box |
なし |
|
$center |
なし |
|
$centerSphere |
なし |
|
$geoIntersects |
19c |
|
$geometry |
なし |
|
$geoWithin |
19c |
|
$maxDistance |
なし |
|
$near |
19c |
|
$nearSphere |
19c |
|
$polygon |
なし |
|
$uniqueDocs |
なし |
|
論理問合せ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$and |
19c |
|
$nor |
19c |
|
$not |
19c |
|
$or |
19c |
|
投影演算子
| 演算子 |
サポート(開始時期) |
ノート |
$elemMatch |
19c |
|
$meta |
なし |
|
$slice |
なし |
|
配列更新演算子
| 演算子 |
サポート(開始時期) |
ノート |
$ |
19c |
|
$[] |
19c |
|
$[<identifier>] |
19c |
|
$addToSet |
19c |
|
$pop |
19c |
|
$pull |
19c |
|
$pullAll |
19c |
|
$push |
19c |
|
ビット単位更新演算子
| 演算子 |
サポート(開始時期) |
ノート |
$bit |
19c |
|
フィールド更新演算子
| 演算子 |
サポート(開始時期) |
ノート |
$currentDate |
19c |
|
$inc |
19c |
|
$max |
19c |
|
$min |
19c |
|
$mul |
19c |
|
$rename |
19c |
|
$set |
19c |
|
$setOnInsert |
19c |
|
$unset |
19c |
|
修飾子更新演算子
| 演算子 |
サポート(開始時期) |
ノート |
$each |
19c |
|
$position |
19c |
|
$slice |
19c |
|
$sort |
19c |
|
集計パイプライン・ステージ
| ステージ |
サポート(開始時期) |
ノート |
$addFields |
26ai |
別名: $set。 |
$bucket |
26ai |
|
$bucketAuto |
なし |
|
$collStats |
19c |
|
$count |
19c |
|
$currentOp |
なし |
|
$documents |
26ai |
|
$external |
26ai |
「$external集計パイプライン・ステージ」を参照してください。 |
$facet |
26ai |
|
$geoNear |
なし |
|
$graphLookup |
なし |
|
$group |
26ai |
|
$indexStats |
26ai |
|
$limit |
19c |
|
$listLocalSessions |
なし |
|
$listSessions |
なし |
|
$lookup |
26ai |
次の$lookupの項を参照してください。 |
$match |
19c |
|
$merge |
26ai |
|
$out |
26ai |
|
$planCacheStats |
なし |
|
$project |
19c |
|
$redact |
なし |
|
$replaceRoot |
26ai |
|
$replaceWith |
26ai |
|
$sample |
26ai |
|
$setWindowFields |
なし |
|
$set |
26ai |
|
$skip |
19c |
|
$sort |
26ai |
|
$sortByCount |
26ai |
|
$sql |
19c |
「$sql集計パイプライン・ステージ」を参照してください。 |
$unionWith |
26ai |
|
$unset |
19c |
|
$unwind |
26ai |
|
$lookup集計パイプライン・ステージ
ステージ$lookupの使用に関する制限事項を説明します。
- フィールド
letはサポートされていません。使用すると、エラーが発生します。
- フィールド
localFieldの値が、入力ドキュメントから欠落しているフィールドである場合は、エラーが発生します。(欠落しているフィールドは、それにnull値がある場合と同様に、処理されません。)
- フィールド
localFieldの値が配列である場合や、1つの入力ドキュメント内で複数回出現するフィールドである(したがって、複数の値を生成する)場合は、エラーが発生します。
- フィールド
foreignFieldの値が、入力ドキュメントから欠落しているフィールドである場合、一致するドキュメントはありません(エラーは発生しない)。これには、フィールドlocalFieldで指定されているドキュメント・フィールドが欠落しているかそれにnull値がある場合が含まれます。
集計パイプライン演算子および式
算術演算子
| 演算子 |
サポート(開始時期) |
ノート |
$abs |
26ai |
|
$add |
26ai |
|
$ceil |
26ai |
|
$divide |
26ai |
|
$exp |
26ai |
|
$floor |
26ai |
|
$ln |
26ai |
|
$log |
26ai |
|
$log10 |
26ai |
|
$mod |
26ai |
|
$multiply |
26ai |
|
$pow |
26ai |
|
$round |
26ai |
|
$sqrt |
26ai |
|
$subtract |
26ai |
|
$trunc |
26ai |
|
三角法演算子
| 演算子 |
サポート(開始時期) |
ノート |
$sin |
26ai |
|
$cos |
26ai |
|
$tan |
26ai |
|
$asin |
26ai |
|
$acos |
26ai |
|
$atan |
26ai |
|
$atan2 |
26ai |
|
$sinh |
26ai |
|
$tanh |
26ai |
|
$degreesToRadians |
26ai |
|
$radiansToDegrees |
26ai |
|
配列演算子
| 演算子 |
サポート(開始時期) |
ノート |
$arrayElemAt |
26ai |
|
$arrayToObject |
26ai |
|
$concatArrays |
26ai |
|
$filter |
26ai |
|
$first |
26ai |
|
$firstN |
26ai |
|
$in |
26ai |
|
$indexOfArray |
26ai |
|
$isArray |
26ai |
|
$last |
26ai |
|
$lastN |
26ai |
|
$objectToArray |
26ai |
|
$range |
26ai |
|
$reduce |
26ai |
|
$reverseArray |
26ai |
|
$size |
26ai |
|
$slice |
26ai |
|
$sortArray |
26ai |
|
$zip |
26ai |
|
ブール演算子
| 演算子 |
サポート(開始時期) |
ノート |
$and |
26ai |
|
$not |
26ai |
|
$or |
26ai |
|
比較演算子
| 演算子 |
サポート(開始時期) |
ノート |
$cmp |
26ai |
|
$eq |
26ai |
|
$gt |
26ai |
|
$gte |
26ai |
|
$lt |
26ai |
|
$lte |
26ai |
|
$ne |
26ai |
|
条件演算子
| 演算子 |
サポート(開始時期) |
ノート |
$cond |
26ai |
|
$ifNull |
26ai |
|
$switch |
26ai |
|
日付演算子
| 演算子 |
サポート(開始時期) |
ノート |
$dateAdd |
なし |
|
$dateDiff |
なし |
|
$dateFromParts |
26ai |
|
$dateFromString |
26ai |
|
$dateSubtract |
なし |
|
$dateToParts |
26ai |
|
$dateToString |
26ai |
|
$dateTrunc |
なし |
|
$dayOfMonth |
26ai |
|
$dayOfWeek |
26ai |
|
$dayOfYear |
26ai |
|
$hour |
26ai |
|
$isoDayOfWeek |
26ai |
|
$isoWeek |
26ai |
|
$isoWeekYear |
26ai |
|
$millisecond |
26ai |
|
$minute |
26ai |
|
$month |
26ai |
|
$second |
26ai |
|
$week |
26ai |
|
$year |
26ai |
|
リテラル演算子
| 演算子 |
サポート(開始時期) |
ノート |
$literal |
26ai |
|
オブジェクト演算子
| 演算子 |
サポート(開始時期) |
ノート |
$mergeObjects |
26ai |
|
$objectToArray |
26ai |
|
$setField |
なし |
|
集合演算子
| 演算子 |
サポート(開始時期) |
ノート |
$anyElementFalse |
なし |
|
$anyElementTrue |
なし |
|
$setDifference |
なし |
|
$setEquals |
なし |
|
$setIntersection |
26ai |
|
$setIsSubset |
なし |
|
$setUnion |
26ai |
|
文字列演算子
| 演算子 |
サポート(開始時期) |
ノート |
$concat |
26ai |
|
$indexOfBytes |
なし |
|
$indexOfCP |
26ai |
|
$ltrim |
26ai |
|
$regexFind |
なし |
|
$regexFindAll |
なし |
|
$regexMatch |
なし |
|
$replaceAll |
なし |
|
$replaceOne |
なし |
|
$rtrim |
26ai |
|
$split |
26ai |
|
$strcasecmp |
26ai |
|
$strLenBytes |
なし |
|
$strLenCP |
26ai |
|
$substr |
26ai |
|
$substrBytes |
なし |
|
$substrCP |
26ai |
|
$toLower |
26ai |
|
$toUpper |
26ai |
|
$trim |
19c |
|
テキスト演算子
| 演算子 |
サポート(開始時期) |
ノート |
$meta |
なし |
|
型演算子
| 演算子 |
サポート(開始時期) |
ノート |
$convert |
26ai |
|
$isNumber |
26ai |
|
$toBool |
26ai |
|
$toDate |
26ai |
|
$toDecimal |
なし |
|
$toDouble |
26ai |
|
$toInt |
26ai |
|
$toLong |
26ai |
|
$toObjectId |
26ai |
|
$toString |
26ai |
|
$type |
26ai |
|
アキュムレータ演算子
| 演算子 |
サポート(開始時期) |
ノート |
$accumulator |
なし |
サーバー側のJavaScriptは非推奨となっています。MongoDBドキュメントを参照してください。 |
$addToSet |
26ai |
|
$avg |
26ai |
|
$bottom |
26ai |
|
$bottomN |
なし |
|
$count |
26ai |
|
$first |
26ai |
|
$firstN |
なし |
|
$last |
26ai |
|
$lastN |
なし |
|
$max |
26ai |
|
$maxN |
なし |
|
$min |
26ai |
|
$push |
26ai |
|
$stdDevPop |
26ai |
|
$stdDevSamp |
26ai |
|
$sum |
26ai |
|
$top |
26ai |
|
$topN |
なし |
|
変数演算子
| 演算子 |
サポート(開始時期) |
ノート |
$let |
26ai |
|
システム変数
| 変数 |
サポート(開始時期) |
ノート |
$$CURRENT |
26ai |
|
$$DESCEND |
なし |
|
$$KEEP |
なし |
|
$$PRUNE |
なし |
|
$$REMOVE |
なし |
|
$$ROOT |
26ai |
|
その他の演算子
| 演算子 |
サポート(開始時期) |
ノート |
$binarySize |
26ai |
|
$getField |
なし |
|
$rand |
26ai |
|
$sampleRate |
なし |
|
$map |
26ai |
|
$function |
なし |
サーバー側のJavaScriptは非推奨となっています。MongoDBドキュメントを参照してください。 |
データ型
MongoDB BSONデータ型のサポート:
| データ型と別名 |
サポート(開始時期) |
ノート |
32ビット整数(int) |
19c |
|
64ビット整数(long) |
19c |
|
配列(array) |
19c |
|
バイナリ・データ(binData) |
19c |
|
ブール(bool) |
19c |
|
日付(date) |
19c |
|
DBPointer (dbPointer) |
なし |
|
Decimal128 (decimal) |
19c |
|
Double (double) |
19c |
|
JavaScript (javascript) |
なし |
|
MaxKey (maxKey) |
なし |
|
MinKey (minKey) |
なし |
|
Null (null) |
19c |
|
オブジェクト(object) |
19c |
|
ObjectId (objectId) |
19c |
|
正規表現(regex) |
なし |
|
文字列(string) |
19c |
|
記号(symbol) |
なし |
|
タイムスタンプ(timestamp) |
なし |
|
未定義(undefined) |
なし |
|
サポートされていない型は、ロード時に文字列に変換されます。
索引
| 索引タイプ |
サポート(開始時期) |
ノート |
| 2d索引 |
なし |
|
| 2dsphere索引 |
なし |
コレクションのバッキング表でSQL CREATE INDEXを使用してOracle AI Database空間索引を作成できます。 |
| 複合複数キー索引 |
26ai |
下のノートを参照してください。 |
| ハッシュ索引 |
なし |
|
| 単一フィールド複数キー索引 |
26ai |
下のノートを参照してください。 |
| テキスト索引 |
19c |
|
索引オプション
| 索引オプション |
サポート(開始時期) |
ノート |
| background |
No-op |
MongoDBでは非推奨となっています。Oracle AI Databaseでは無視されます。 |
| collation |
なし |
|
| expireAfterSeconds |
26ai |
|
| hidden |
なし |
|
| online |
26ai |
Oracle AI Databaseに固有です。指定できる値はtrue (デフォルト)またはfalseです。Trueは、索引作成中に表に対するDML操作を許可するということです。 |
| partialFilterExpression |
なし |
|
| sparse |
26ai |
|
| storageEngine |
なし |
|
| unique |
26ai |
|