13

SQL ServerのT-SQL構文では、複数のプラス記号を連続して使用できるようです。

SELECT 1 + 2 --3
SELECT 1 ++ 2 --3
SELECT 1 ++++++ 2 --3
SELECT 1 + '2' --3
SELECT 1 ++ '2' --3
SELECT '1' + '2' --'12'
SELECT '1' ++ '2' --'12'

複数のプラスは、単一のプラスと同じように動作するようです。「複数プラス演算子」++が存在するのはなぜですか?それは何をするためのものか?

4

2 に答える 2

18

最初のプラス記号は、加算演算子として解釈されます。残りの各プラス記号は、単項プラス演算子として解釈されます。

1 ++ 2   means   1 + (+2)
1 +++ 2  means   1 + (+(+2))

プログラミング言語では、この単項プラス演算子を使用するのが非常に一般的ですが、実際には何も実行しないため、SQLではめったに使用されません。

単項プラスは数値式の前に表示できますが、式から返された値に対しては何の操作も実行しません。具体的には、負の式の正の値を返しません。

単項プラス演算子は、SQL-92標準で言及されています。

通常の算術演算子、プラス、マイナス、回、除算、単項プラス、および単項マイナスに加えて、数値を返す次の関数があります。

単項プラスはそれほど便利ではありませんが、単項マイナスというより便利なコンパニオンがあります。の演算子とも呼ばれます。

SELECT -(expression), ...
--     ^ unary minus
于 2012-05-05T18:38:40.783 に答える
3

SELECT 1 ++ 2 1プラス(+2)を意味し、3を意味します

1+(+(+2))他の人にも同じロジックなど

SELECT '1' + '2' --'12'文字列「1」と文字列「2」の2つの文字列を連結しているため、結果は「12」になります。

于 2012-05-05T18:40:20.417 に答える