SQR(Hyperion SQR Production Reporting、OBIEEの一部)は、データベース管理システムからレポートを生成するために設計されたプログラミング言語です。その名称はStructured Query Reporterの略で、 SQL (Structured Query Language)との関連性を示しています。SQR プログラムには、任意のSQL文を埋め込むことができます。
1980年代初頭、SQRはGuptaのSQLBaseの「無料」アドオンとして提供されていた。当時、SQLBaseはIBM PC(x86 )マシンで動作する唯一のリレーショナルデータベースだった。SQRは、おそらく1984年か1985年頃に、オハイオ州クリーブランドのイスラエル・スターンによって開発された。
SQ Software は 1980 年代半ばに SQR を作成しました。D & N Systems とマーケティング契約を結んでいましたが、D & N Systems は後に SQL Solutions に社名を変更し、1990 年代初頭にSybase Inc に買収されました。Oracle Corporationと直接競合することを避けるため、Sybase は SQR の Oracle データベース互換バージョンについて MITI とマーケティングおよび開発契約を結びました。MITI は 1990 年代半ばに SQR の全権利を取得しました。MITI は 1997 年に SQRiBE Technologies に社名を変更しました。Brio Technology は1999 年 8 月に SQRiBE を買収しました。Brio Technology は後に Brio Software に社名を変更しました。Brio は2000 年頃にソースコードをPeopleSoft Inc にライセンス供与しました。Hyperion Solutions Corporation は 2003 年 10 月に Brio Software を買収しました。Oracle Corporation は 2004 年 12 月に PeopleSoft を買収しました。Oracle Corporation は 2007 年 3 月に Hyperion Solutions を買収しました。
SQRは、データベース機能と印刷機能に優れています。プログラム内のほぼあらゆる場所にSQL文を埋め込むことができます。SQRの構成によっては、 Essbaseなどの多次元データベースにアクセスすることも可能です。データベースの読み取りと印刷命令を組み合わせたり、データや改ページを柔軟にフォーマットしたり、フォント、サイズ、色を可変に印刷したりできます。SQRには、コンテンツや外観を調整するための多数のパラメータを提供するグラフ生成コマンドが含まれています。
SQR には 4 つのスカラーデータ型があります。最初の 3 つは数値 (変数は「#」で始まります)、文字列 (変数は「$」で始まります)、および日付 (変数は文字列変数と同様に「$」で始まります) です。日付変数は、文字列変数と区別するために宣言する必要があります。数値変数は、整数、浮動小数点など、より具体的な型にすることができます。データベース列変数は「&」で始まります。データベース列の値は、SQL の「select」ステートメントによってのみ設定され、他のコマンドではその値を変更できません。
SQRには配列データ構造があります。配列は1つ以上のフィールドを持ち、各フィールドは利用可能な型のいずれかです。各フィールドは複数回出現することができ、SQRは2次元配列に相当する機能を持ちます。SQRには、単一の配列内の複数の項目を操作するコマンドがあります。
SQRには4つの制御構造があります。最初の3つはif-else-end、while-end、evaluateです。4つ目は埋め込みSQLの「select」文で、ループ内でデータの各行に対してSQR文を実行できます。
SQRには、コンピュータファイルを開く、読み込む、書き込む、追記する、閉じるなどのコマンドがあります。ファイルの入出力は順次処理のみで、レコード指向です。ランダムアクセスはサポートされていません。