有多个字符串但相同的参数

时间:2017-04-11 16:27:56

标签: bash shell

我希望能够做一些像

这样的事情
    UPDATE 
         pc
    FROM appusers AS a
         JOIN prequals_created AS pc
            ON a.id = pc.loanofficer
SET 
        pc.loanofficer = a.fullname

但我不知道该怎么做,要搜索什么,或者它是否真的有效。

3 个答案:

答案 0 :(得分:1)

报价不像其他语言那样定义字符串。他们只是逃避它们之间的任何东西,就像你使用了反斜杠一样。 \h\e\l\l\o"hello"代表完全相同的字符串,两者本身都相当于hello

从技术上讲,没有字符串串联,因为需要明确地拆分字符串以产生多个字。您可以将"hello""world"视为"连接"两个字符串,但就shell而言,没有两个单独的字符串可以开始,只有两组引号可以删除。

所以要回答你的问题,你只需要写

 $ echo "Hello"" ""World""!"

或更简单

 $ echo "Hello World!"

或甚至(引用最少必要的字符数):

 $ echo Hello\ World!

答案 1 :(得分:0)

你可以做到

USE[master]
GO
SELECT session_id AS SPID, command, a.text AS Query, start_time, percent_complete, dateadd(second,estimated_completion_time/1000, getdate()) as estimated_completion_time 
    FROM sys.dm_exec_requests r CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a 
        WHERE r.command in ('BACKUP DATABASE','RESTORE DATABASE')
GO

echo "Hello World!"

为什么我将var1="Hello" var2=" " var3="World" var4='!' echo "${var1}${var2}${var3}${var4}" 放在单引号中? var4具有特殊含义。我可以更好地使用单引号用于所有var,但是这样你就可以看到你必须小心引用。

答案 2 :(得分:0)

你可以做到

echo "Hello"" ""World""!"

它将连接字符串。如果您正在考虑将变量连接到字符串,则可以执行

echo "Hello"$VAR"WORLD"

或者只是将字符串放在引号中:

echo "Hello${VAR}World"

请注意,echo也会回显引号之间的空格...... - 约翰