[解決済み】CREATE VIEW は、バッチ内の唯一のステートメントでなければなりません。
2022-01-22 20:35:20
質問
ビューを作ろうとしています。 今のところ、こんな感じで書いています。
with ExpAndCheapMedicine(MostMoney, MinMoney) as
(
select max(unitprice), min(unitprice)
from Medicine
)
,
findmostexpensive(nameOfExpensive) as
(
select tradename
from Medicine, ExpAndCheapMedicine
where UnitPrice = MostMoney
)
,
findCheapest(nameOfCheapest) as
(
select tradename
from Medicine, ExpAndCheapMedicine
where UnitPrice = MinMoney
)
CREATE VIEW showing
as
select tradename, unitprice, GenericFlag
from Medicine;
残念ながら、次の行でエラーが発生します。
CREATE VIEW showing
CREATE VIEWはバッチ内の唯一のステートメントでなければなりません。
どうやったら直るんだ!?
解決方法は?
エラーにあるように
CREATE VIEW
ステートメントは、クエリバッチ内の唯一のステートメントである必要があります。
このシナリオでは、実現したい機能に応じて、2つのオプションがあります。
-
を配置します。
CREATE VIEW
クエリの先頭にCREATE VIEW showing as select tradename, unitprice, GenericFlag from Medicine; with ExpAndCheapMedicine(MostMoney, MinMoney) as ( select max(unitprice), min(unitprice) from Medicine ) , findmostexpensive(nameOfExpensive) as ( select tradename from Medicine, ExpAndCheapMedicine where UnitPrice = MostMoney ) , findCheapest(nameOfCheapest) as ( select tradename from Medicine, ExpAndCheapMedicine where UnitPrice = MinMoney )
-
使用方法
GO
の後、CTE の前にCREATE VIEW
クエリ-- オプション #2
with ExpAndCheapMedicine(MostMoney, MinMoney) as ( select max(unitprice), min(unitprice) from Medicine ) , findmostexpensive(nameOfExpensive) as ( select tradename from Medicine, ExpAndCheapMedicine where UnitPrice = MostMoney ) , findCheapest(nameOfCheapest) as ( select tradename from Medicine, ExpAndCheapMedicine where UnitPrice = MinMoney ) GO CREATE VIEW showing as select tradename, unitprice, GenericFlag from Medicine;
関連
-
[解決済み】テキストが切り捨てられた、または1つ以上の文字がターゲットコードページで一致しない アンピボットの主キーを含む
-
[解決済み】sys.dm_exec_sql_textはどのように機能するのでしょうか?
-
[解決済み】SQL Serverは「集約関数やサブクエリを含む式に対して集約関数を実行できない」が、Sybaseはできる。
-
[解決済み] アンピボットの主キーを含む対象コードページで、テキストが切り捨てられたか、1つ以上の文字が一致しない。
-
[解決済み] SQLエラーです。ORA-00922: オプションがないか無効です。
-
[解決済み] 集計を行わずに行から列へピボット移動する
-
[解決済み] 時間を時間単位や10分単位でグループ化する方法
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] 最初の行への結合方法
-
[解決済み] SQLite - UPSERT *not* INSERT or REPLACE
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] varchar 値 'simple, ' をデータ型 int に変換する際に変換に失敗しました。
-
[解決済み】集約関数のないTSQLピボット
-
[解決済み】SQLが単一グループのグループ関数でないこと
-
[解決済み】参照するテーブルにプライマリーキーやキャンディデートキーがない
-
[解決済み】一括読み込みデータ変換エラー(切り捨て)
-
[解決済み】ORA-01791: SELECTされた式ではない
-
[解決済み] ora-06553 pls-306 'ogc_x' の呼び出しで引数の数または種類が誤っている。
-
[解決済み] Presto の JSON_EXTRACT で ' ' 文字を含むキーに問題がある。
-
[解決済み] トリガーがコンパイルエラーで作成される
-
[解決済み] 1行目4列目(年)の一括読み込みデータ変換エラー(型の不一致または指定したコードページに対して無効な文字)