Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

EXCEPT

2 つのセットを検証し、最初のセットの要素で構成されるセットを返します。ただし、2 番目のセットにもある要素があれば除外します。この関数は、オプションで、そのセット内にある重複を削除します。

返りタイプ

この関数は、セットを返します。

構文および詳細

EXCEPT(set_expression1, set_expression2, ALL)

EXCEPT(set_expression1, set_expression2)
  • set_expression1 および set_expression2 は、セットに対して評価される式です。

  • オプションのキーワード ALL が含まれている場合、これは、すべての重複を保持することを指定します。既定では、最初のセットに、重複する要素が含まれている場合、それらのうち最初の要素のみが含まれます。

set_expression1 にない要素が set_expression2 に含まれている場合、それらの要素は無視されます。返されたセットには、set_expression1 の要素のみが含まれます。

2 つの名前付きセットを定義する以下のクエリを考えてみます。

WITH SET set1 AS '{allerd.eggs,allerd.eggs,allerd.soy,allerd.wheat}' 
SET set2 AS '{allerd.[diary products],allerd.pollen,allerd.wheat}' 
SELECT MEASURES.[%COUNT] ON 0, EXCEPT(set1,set2) ON 1 FROM patients

                             Patient Count
1 eggs                                  451
2 soy                                   462

このクエリは、set1 のメンバのうち、set2 にはないメンバを示します。メンバ allerd.eggs は、set1 内に 2 回リストされていますが、結果には 1 回しか表示されていません。

一方、以下のバリエーションでは ALL キーワードを使用しています。

WITH SET set1 AS '{allerd.eggs,allerd.eggs,allerd.soy,allerd.wheat}' 
SET set2 AS '{allerd.[diary products],allerd.pollen,allerd.wheat}' 
SELECT MEASURES.[%COUNT] ON 0, EXCEPT(set1,set2,ALL) ON 1 FROM patients

                             Patient Count
1 eggs                                  451
2 eggs                                  451
3 soy                                   462

関連項目

FeedbackOpens in a new tab