3
キャプチャするSQLの拡張
Immermanによると、SQLクエリに関連付けられた複雑度クラスは、(一次クエリとカウント演算子)の安全なクエリのクラスです。SQLは安全なクエリをキャプチャします。(換言すれば、すべてのSQLクエリはで複雑性を有する、そして内のすべての問題 SQLクエリとして表現することができます。)Q (F O (C O U N T ))Q (F O (C O U N T )))Q (F O (C O U N T ))Q(FO(COUNT))\mathsf{Q(FO(COUNT))}Q (F O (C O U N T ))Q(FO(COUNT))\mathsf{Q(FO(COUNT))}Q (F O (C O U N T ))Q(FO(COUNT))\mathsf{Q(FO(COUNT))} この結果に基づいて、理論的な観点から、効率的に解決できるがSQLでは表現できない興味深い問題が数多くあります。したがって、まだ効率的なSQLの拡張は興味深いようです。だからここに私の質問があります: をキャプチャするSQLの拡張機能(業界で実装および使用)があり(つまり、すべての多項式時間の計算可能なクエリを表現でき、他のクエリは表現できません)。PP\mathsf{P} 3つの条件をすべて満たすデータベースクエリ言語が必要です。SQLを拡張してをキャプチャする拡張機能を定義するのは簡単です。しかし私の質問は、そのような言語が実際的な観点から理にかなっているかどうかであるので、実際に使用されている言語が欲しいです。これが当てはまらず、そのような言語がない場合、実用的な観点からそのような言語を面白くしない理由があるかどうかを知りたいですか?たとえば、実際に発生するクエリは、通常、そのような言語を必要としないほど単純ですか?PP\mathsf{P}