このトピックでは、SELECT、INSERT INTO SELECT、WITHなどのSQL構文でマテリアライズドビューを使用してクエリのパフォーマンスを向上させる方法について説明します。
必要な権限。
マテリアライズドビューに対するSELECT権限が必要です。 マテリアライズドビューによって参照されるベーステーブルに対するSELECT権限は必要ありません。
説明
GRANTステートメントを実行して、マテリアライズドビューに対するSELECT権限をユーザーに付与できます。
GRANT SELECT ON <mv_name> TO '<user>'@'%';方式
マテリアライズドビューのデータを照会するために使用されるステートメントは、標準テーブルまたはビューのデータを照会するために使用されるステートメントと同じです。 すべてのSQL構文でマテリアライズドビューを使用できます。 例:
SELECT * FROM adbview
WHERE device = 'PC'
AND city = 'Beijing';説明
マテリアライズドビューを使用してクエリを実行すると、マテリアライズドビューによって参照されるベーステーブルが更新されることがありますが、更新はマテリアライズドビューに反映されません。 この場合、クエリ結果が不正確になる可能性があります。 このため、実テーブルが更新された後、マテリアライズドビューを手動で更新し、クエリを実行することをお勧めします。 マテリアライズドビューを手動で更新する方法の詳細については、「マテリアライズドビューの完全更新の設定」をご参照ください。