mysql select where質問
享耳
享耳 2019-06-09 22:36:33
0
0
1227

先輩に質問です。テーブルがあります。テーブルの中にフィールド sfz があります。文字型は 18 ビットの固定長です。このフィールドを変数に代入するために、格納プロセスでカーソルを使用します。 vsfz (これも固定長の文字型です。18 ビット)、クエリ ステートメントを書きました:select bj from kq201905 where sfz=vsfz; と、正しくクエリできます。複数のテーブルをクエリしたいため、変数ループでテーブル名に値を割り当てる必要があるため、prepare ステートメントを使用して結合します。

set @vsk=concat(' select bj from ',vkn,' where sfz=' ,vsfz,';');

@vsk から stmt を準備;

stmt を実行;

deallocate prepare stmt;

実行後、クエリ結果が間違っていることが判明しました。テストしたところ、テーブル名変数とは関係がありませんでしたが、where 句に問題があるのではないかと思われます。理由をご存知の方がいらっしゃいましたら、教えてください。ありがとうございます。

享耳
享耳

全員に返信 (0)
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!