2

如何在打印表中显示用户定义的 MYSQL 变量的字符串值?

例子:

这...

SELECT CONCAT_WS(  ' ', o.FirstName, o.LastName ) AS FirstLast,
`Company` 
FROM Orders o
    

给我这个..

|---------------|----------|    
|   FirstLast   | Company  |
|---------------|----------|
| First1 Last1  | Company1 |
| First2 Last2  | Company2 |
| First3 Last3  | Company3 |
| First4 Last4  | Company4 |
|---------------|----------|    

但是这个...

SELECT @firstlast = CONCAT_WS(  ' ', o.FirstName, o.LastName ),
`Company` 
FROM Orders o

给我这个...

|-------------------------------------------------------------|----------|
|   @firstlast = CONCAT_WS(  ' ', o.FirstName, o.LastName )   | Company  |
|-------------------------------------------------------------|----------|
|                                                       NULL  | Company1 |
|                                                       NULL  | Company2 |
|                                                       NULL  | Company3 |
|                                                       NULL  | Company4 |
|-------------------------------------------------------------|----------|

显然这是不正确的,但我不知道是什么。

我将如何“打印”或显示值?我什至不确定我是否使变量正确!

任何方向或指针都会很棒。

4

1 回答 1

4

=运算符用于比较。因为@firstlastNULL比较的结果是NULL

赋值运算符是:=

@firstlast := CONCAT_WS(' ', o.FirstName, o.LastName) 

当然,在您的具体示例中,使用变量没有任何优势。

于 2012-04-25T19:47:22.290 回答