複数の行を返すステートメントを使用してユーザー変数に値を代入すると、最後の行の値がそのユーザー変数に保存されます。ユーザー変数には単一の値しか保存できないためです。次の例では、「Tender」テーブルのデータを使用し、それを表示します。 -
mysql> select * from Tender; +----+---------------+--------------+ | Sr | CompanyName | Tender_value | +----+---------------+--------------+ | 1 | Abc Corp. | 250.369003 | | 2 | Khaitan Corp. | 265.588989 | | 3 | Singla group. | 220.255997 | | 4 | Hero group. | 221.253006 | | 5 | Honda group | 225.292266 | +----+---------------+--------------+ 5 rows in set (0.04 sec)
上記の結果セットは、「Tender」テーブルのデータを示しています。ここで、以下に示すように、変数 @name の「companyname」列の値を割り当てます -
mysql> Select @name := companyname from tender; +----------------------+ | @name := companyname | +----------------------+ | Abc Corp. | | Khaitan Corp. | | Singla group. | | Hero group. | | Honda group | +----------------------+ 5 rows in set (0.00 sec)
ただし、この変数を参照すると、最後の行の会社名のみが表示されます。これは、ユーザー変数には単一の値しか格納できないためです。
えええええ以上が複数の行を返すステートメントを使用して MySQL ユーザー変数に値を代入するとどうなりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。