0

いつものように、いろいろな方法で結合されたたくさんのテーブルで店を構えています。

製品テーブルには、「ステータス」というフィールドがあります。ステータス = 4 の場合、製品はアーカイブされています。

ステータスが 4 のクエリが返されないようにしたいと考えています。現在、AND status <> 4見つけられるすべての SQL クエリに a を追加しようとしています。

これを行うためのより良い方法はありますか、それとも唯一の方法ですか?

4

2 に答える 2

6

status = 4 を表示しないビューを作成し、代わりにそのビューをクエリで使用できます。

于 2012-12-17T15:19:35.397 に答える
0

おそらく、アーカイブ済みと未アーカイブの間で製品のステータスを変更する操作は非常にまれですが、製品テーブルから選択することは非常に一般的です。したがって、テーブルを作成し、archivedアーカイブされたすべての製品をそこに移動する必要があります。

これが最もパフォーマンスの高いソリューションになります。

アーカイブされているかどうかに関係なく、すべての製品を時々表示したい場合は、archivedproductsテーブルを組み合わせたビューを作成することもできます。

于 2012-12-17T15:27:08.347 に答える