如果我將一個值分配給一個 MySQL 使用者變數,該值使用返回多行的語句,接下來會發生什麼?
如果使用返回多行的語句將一個值分配給一個使用者變數,那麼最後一行中的值將儲存在該使用者變數中,因為使用者變數只能儲存單個值。以下面的例子為例,我們使用的是表“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> Select @name; +-------------+ | @name | +-------------+ | Honda group | +-------------+ 1 row in set (0.00 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP