ご覧のとおり、ビューは変数を使用できません。これは制限事項です。正確なWHERE条件でビューを作成しようとしています。最初にCREATEVIEWステートメントのテキストを作成してから、プリペアドステートメント ステートメントを実行するために、それはあなたを助けます。しかし、新しいビューを作成、作成、作成するために、本当に必要ですか?
編集:これはコメント内の参照の内容です。
Olexandr Melnyk ビューでのローカル変数の使用に関するMySQLの制限の簡単な回避策は、変数の値を返す関数を使用することです。
create function book_subject
returns varchar(64) as
return @book_subject;
create view thematical_books as
select title
, author
from books
where subject = book_subject();