問題タブ [string-concatenation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - ルビ文字列連結(だと思う?)
「The Well-Grounded Rubyist」から始めたところですが、彼らは次の例を示しました。
特に、文字列の連結にコンマを使用しているように見える 2 行目を見ています。+
コードの一部のため、シンボルは使用されていないと思い+ 32
ます。しかし、誰かがコンマが実際に何をしているのか説明できますか?
c# - 大きな文字列 (SQL コマンドなど) を作成する場合、C# コンパイラはどれくらい賢いのでしょうか?
これはばかげているように聞こえるかもしれませんが...
大きな SQL コマンドを作成するときは、コードを読みやすくしたいので、次のようにします。
連結が見えますか?さて、パフォーマンスを節約するために、次のようにします。
コードを読みやすく保ちますが、連結を保存します。これで実際にパフォーマンスが節約されるのでしょうか、それともコンパイラは最初の文字列を「事前に連結」するのに十分なほどスマートなのでしょうか?
sql-server - SQL Server 2000:連結集計サブクエリを実行するためのアイデア
必要な行を返すクエリがあります。例:
ここで、「作成者」(元のポスターや編集者など)のコンマ区切りのリストを含む列を返したいと思います。例えば:
フェイキング・イット
SQL Server 2000には集計操作がありませんCONCAT(AuthorName, ', ')
。私はそれを偽造してきました。作成TOP 1
者と作成者数に対して、単純な副選択を実行します。
複数の作成者がいる場合は、ユーザーに省略記号( "…")を表示して、複数の作成者がいることを示します。たとえば、ユーザーには次のように表示されます。
通常、質問は編集されないため、これで十分に機能します。つまり、99%のケースを完全にサポートし、1%のケースも半分しかサポートしていません。
スレッド化された再クエリ
より複雑でバグが発生しやすい解決策として、表示されたリストを繰り返し、リスト内の「質問」ごとにスレッドプールワーカースレッドを起動し、データベースに対してクエリを実行して作成者のリストを取得することを考えていました。 、次にリストをメモリに集約します。これは、リストが(ネイティブ)アプリケーションで最初に入力されることを意味します。その後、数千の個別のクエリを発行します。
しかし、それは恐ろしく、恐ろしく、ひどく、遅いでしょう。スレッドワークになるので、バグだらけは言うまでもありません。
うんうんうん
アダムメカニックは非常に明白に言います:
SQL Serverでは、行を区切り文字列に連結しないでください。クライアント側で行います。
方法を教えてください、そして私はそれをします。
/泣く
私の元の「TOP1plusellipses」ソリューションと同じくらい速い(たとえば、1桁以内)より良いソリューションを誰かが考えることができますか?
たとえば、リーチ行に結果セットが関連付けられている結果セットを返す方法はありますか?したがって、「マスター」行ごとに、リストを含む「詳細」結果セットを取得できます。
ベストアンサーのコード
アダム・マハニックのソリューションへのケイドのリンクは私が一番好きです。魔法を介して動作するように見えるユーザー定義関数:
T-SQLの使用法は次のとおりです。
java - なぜ 1 文字 + 別の 1 文字 = 変な数字なのか
コード スニペットは次のとおりです。
出力は次のとおりです。
これはなぜですか?、、または の'a' + 'b'
いずれかになると思います。"ab"
"12"
3
何が起きてる?
tsql - 異なる行のフィールドの連結
私は、私が根底に到達することができない集約の問題で立ち往生しています。
私は次のように最もよく要約されるいくつかのデータを持っています
次のデータを返すクエリが欲しいのですが。
誰?
編集
提供されているすべてのソリューションがを使用していることに気付きましたFOR XML PATH
。この魔法は何ですか?
c++ - StringBuffer/StringBuilderに相当するC++?
C# のStringBuilderまたは Java のStringBufferに似た、効率的な文字列連結機能を提供する C++ 標準テンプレート ライブラリ クラスはありますか?
.net - 簡単なことのためにstring.Formatを使用しますか?
.Netプログラミングの初期の頃は、文字列を次のようにコンパイルするなど、複雑な文字列の連結にのみstring.Format()を使用していました。
2002年2月2日付けの顧客注文234と支払いID55543に問題があります。
しかし、今では、私がしなければならないほとんどすべての文字列連結にstring.Formatを使用しています。また、文字列の前に何かを付けるなどの単純なものも使用しています。
これにオーバーヘッドが発生する可能性はありますか?たぶん私は+
これらの簡単な操作を行うために通常の演算子を使用する必要がありますか?
これについてどう思いますか?
c# - DotNetで2つのUnicode文字を連結し、スペースを持たないようにするにはどうすればよいですか?
次の2つのUnicode文字を連結すると、両方が表示されますが、それらの間にスペースがあります。とにかくこのスペースを取り除く方法はありますか?
hash - 2 つの文字列を連結した後、新しい文字列ハッシュをすばやく生成する方法
私の計算が正しければ、各文字列の個別のハッシュ値が既にある場合は、2 つの文字列を連結するための新しいハッシュ値をすばやく生成できます。ただし、ハッシュ関数が次の形式の場合のみ:
この場合、
例えば。
では、SDBM hash
k=65599
. 一方、DJB hash
has k=33
(またはおそらく31
?) をh(0) = 5381
機能させるために、h(0) = 0
代わりに設定することができます。
ただし、各キャラクターを追加するのではなく、DJB hash
用途を変更します。xor
+
http://www.cse.yorku.ca/~oz/hash.html
xor
ハッシュ関数が代わりに使用する場合、連結された文字列のハッシュ値をすばやく計算する別の手法はあり+
ますか?
string - NSIS で 2 つの文字列を連結するにはどうすればよいですか
NSIS で 2 つの文字列を連結するにはどうすればよいですか?