<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                以下是SQL Server字符串函數,用于處理輸入字符串并返回字符串或數值: | 函數 | 描述說明 | | --- | --- | | ASCII | 返回字符的ASCII代碼值。 | | CHAR | 將ASCII值轉換為字符。 | | CHARINDEX | 從指定位置開始搜索字符串內的子字符串,并返回子字符串的位置。 | | CONCAT | 將兩個或多個字符串連接成一個字符串。 | | CONCAT\_WS | 使用分隔符將多個字符串連接成一個字符串。 | | DIFFERENCE | 比較兩個字符串的`SOUNDEX()`值。 | | FORMAT | 返回使用指定格式和可選區域性格式化的值。 | | LEFT | 從左側開始從字符串中提取給定數量的字符。 | | LEN| 返回字符串的多個字符。 | | LOWER | 將字符串轉換為小寫。 | | LTRIM | 刪除所有前導空格后,從指定的字符串返回一個新字符串。 | | NCHAR | 使用Unicode標準定義的指定整數代碼返回Unicode字符。 | | PATINDEX | 返回指定表達式中第一次出現模式的起始位置。 | | QUOTENAME | 返回添加了分隔符的Unicode字符串,以使輸入字符串成為有效的SQL Server分隔標識符。 | | REPLACE | 用字符串替換所有出現的子字符串與另一個子字符串。 | | REPLICATE | 返回重復指定次數的字符串。 | | REVERSE | 返回字符串的相反順序。 | | RIGHT | 從右側開始從字符串中提取給定數量的字符。 | | RTRIM | 刪除字符串所有尾隨空白后,返回一個新字符串。 | | SOUNDEX | 根據字符串的使用方式返回字符串的四個字符(`SOUNDEX`)代碼 | | SPACE | 返回一串重復的空格。 | | STR | 返回從數字數據轉換的字符數據。 | | STRING\_AGG | 將具有指定分隔符的字符串行連接到新字符串中。 | | STRING_ESCAPE | 轉義文本中的特殊字符并返回帶有轉義字符的文本。 | | STRING\_SPLIT | 一個表值函數,它根據指定的分隔符將字符串拆分為子字符串行。 | | STUFF | 將字符串插入另一個字符串。 | | SUBSTRING | 從具有指定長度的指定位置開始提取字符串中的子字符串。 | | TRANSLATE | 在一次操作中替換多個單字符,一對一轉換。 | | TRIM| 刪除所有前導和尾隨空白后,從指定的字符串返回一個新字符串。 | | UNICODE | 返回字符的Unicode標準定義的整數值。 | | UPPER | 將字符串轉換為大寫。 | ASCII 演示 ``` select ASCII('Z') Z ``` #### SQL Server CHAR()函數簡介 `CHAR()`函數將ASCII代碼值轉換為字符值。 以下簡介`CHAR()`函數的語法: ~~~sql CHAR ( int_exp ) ~~~ 在此語法中,`int_expr`是一個整數表達式,其值為`0`到`255`之間的整數。如果整數表達式的計算結果超出此范圍,則`CHAR()`函數返回`NULL`。 `CHAR()`函數返回數據類型為`CHAR(1)`的字符。 > 請注意,要將字符轉換為ASCII值,請使用[ASCII()](http://www.yiibai.com/sqlserver/sql-server-ascii-function.html "ASCII()")函數 #### SQL Server CHAR()函數示例 以下示例使用`CHAR()`函數來獲取數字`65`和`90`的字符: ~~~sql SELECT CHAR(65) char_65, CHAR(90) char_90; ~~~ ##### SQL Server CHARINDEX()函數簡介 SQL Server `CHARINDEX()`函數從指定位置開始搜索字符串內的子字符串。 它返回搜索到的字符串中找到的子字符串的位置,如果未找到子字符串,則返回零。 需要注意的是:它返回的起始位置是從`1`開始的,而不是從`0`開始的。 以下是`CHARINDEX()`函數的語法: ~~~sql CHARINDEX(substring, string [, start_location]) ~~~ 在上面語法中, * `substring` - 是要搜索的子字符串。它的長度限制為`8,000`個字符。 * `string` - 可以是文字字符串,表達式或列。這是一個要搜索的字符串。 * `start_location`是搜索開始的位置。 `start_location`是整數,大整數或計算結果為這些數據類型的值的表達式。 * `start_location`參數是可選的。 如果未指定,零或負值,則搜索從字符串的開頭開始。 請注意,`CHARINDEX()`函數可以根據指定的排序規則執行區分大小寫和不區分大小寫的搜索。 #### SQL Server CHARINDEX()函數示例 下面來看一些使用`CHARINDEX()`函數的例子。 **1\. 使用CHARINDEX()執行單個搜索** 以下示例使用`CHARINDEX()`函數在字符中`"SQL Server CHARINDEX"`中執行字符串`"SQL`的簡單搜索。 ~~~sql SELECT CHARINDEX('SQL', 'SQL Server CHARINDEX') position; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell position ----------- 1 (1 row affected) ~~~ **2\. 使用CHARINDEX()函數執行不區分大小寫的搜索** 下面語句中對字符串`"SQL Server CHARINDEX"`中執行不區分大小寫的搜索字符串`"SERVER"`: ~~~sql SELECT CHARINDEX( 'SERVER', 'SQL Server CHARINDEX' ) position; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell position ----------- 5 (1 row affected) ~~~ **3\. 使用CHARINDEX()函數執行區分大小寫的搜索** 以下示例顯示如何在字符串:`"SQL Server CHARINDEX"`中區分大小寫搜索字符串`"SERVE"`。 ~~~sql SELECT CHARINDEX( 'SERVER', 'SQL Server CHARINDEX' COLLATE Latin1_General_CS_AS ) position; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell position ----------- 0 (1 row affected) ~~~ **4\. 使用CHARINDEX()函數搜索不存在的子字符串** 以下示例說明了如何在字符串`'This is a haystack'`中搜索子字符串:`'needle'`。 ~~~sql SELECT CHARINDEX('is','This is a my sister',5) start_at_fifth, CHARINDEX('is','This is a my sister',10) start_at_tenth; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell start_at_fifth start_at_tenth -------------- -------------- 6 15 (1 row affected) ~~~ #### SQL Server CONCAT()函數簡介 使用`CONCAT()`函數可將兩個或多個字符串連接成一個字符串,語法如下: ~~~sql CONCAT ( input_string1, input_string2 [, input_stringN ] ); ~~~ `CONCAT()`接收最多`255`個輸入字符串并將它們連接成一個字符串。 它至少需要兩個輸入字符串。 如果傳遞一個輸入字符串,`CONCAT()`函數將會引發錯誤。 如果傳遞非字符串值,`CONCAT()`函數將在連接之前將這些值隱式轉換為字符串。 `CONCAT()`函數還將`NULL`轉換為類型為`VARCHAR(1)`的空字符串。 請注意,要在連接期間添加分隔符,請使用[CONCAT\_WS()](http://www.yiibai.com/sqlserver/sql-server-concat_ws-function.html "CONCAT_WS()")函數。 #### SQL Server CONCAT()函數示例 下面舉一些例子來熟悉如何使用`CONCAT()`函數。 **1\. 將CONCAT()函數與文字字符串一起使用** 以下示例使用`CONCAT()`函數來連接三個文字字符串:`YiiBai`,`.`和`Com`: ~~~sql SELECT 'YiiBai' + '.' + 'Com' AS doname; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell doname --------- YiiBai.Com (1 row affected) ~~~ **2\. 將CONCAT()函數與表列一起使用** 此示例使用[示例數據庫](https://www.yiibai.com/sqlserver/sql-server-sample-database.html "示例數據庫")中的`sales.customers`表。 ![客戶表結構](https://www.yiibai.com/uploads/article/2019/03/01/100406_62418.png "客戶表結構") 以下語句使用`CONCAT()`函數來連接`sales.customers`表的`first_name`和`last_name`列中的值: ~~~sql SELECT customer_id, first_name, last_name, CONCAT(first_name, ' ', last_name) full_name FROM sales.customers ORDER BY full_name; ~~~ #### SQL Server CONCAT\_WS()函數簡介 SQL Server `CONCAT_WS()`函數使用分隔符將兩個或多個字符串連接成一個字符串。 `CONCAT_WS()`表示與分隔符連接。 以下是`CONCAT_WS()`函數的語法: ~~~sql CONCAT_WS(separator,input_string1,input_string2,[...input_stringN]); ~~~ 在上面這個語法中: * `separator`是一個基于字符的表達式,其值為:`CHAR`,`NCHAR`,`VARCHAR`或`NVARCHAR`類型的任何字符。 * `input_string1`到`input_stringN`是任何類型的表達式。`CONCAT_WS()`函數在連接之前隱式地將非字符類型的值轉換為字符類型。 `CONCAT_WS()`函數將輸入字符串連接成一個字符串。 它將這些連接的字符串與第一個參數中指定的分隔符分開。 請注意,`CONCAT_WS()`至少需要兩個輸入字符串。 這意味著如果傳遞零或一個輸入字符串參數,該函數將引發錯誤。 `CONCAT_WS()`函數將`NULL`視為`VARCHAR(1)`類型的空字符串。 它也不會在`NULL`之間添加分隔符。 因此,`CONCAT_WS()`函數可以干凈地連接可能具有空值的字符串。 #### SQL Server CONCAT\_WS()函數示例 下面來看一些使用`CONCAT_WS()`函數的例子。 **1\. 使用CONCAT\_WS()將文字字符串與分隔符連接起來** 以下示例使用`CONCAT_WS()`函數將兩個文字字符串連接成一個字符串。 它使用字符:`.`來分隔兩個連接值: ~~~sql SELECT CONCAT_WS('.', 'YiiBai', 'Com') full_doname ~~~ 執行上面查詢語句,得到以下結果: ~~~shell full_doname ----------- YiiBai.Com (1 行受影響) ~~~ **2\. 將CONCAT\_WS()與表列一起使用** 以下語句使用`CONCAT_WS()`函數連接`sales.customers`表的`last_name`和`first_name`列中的值。 它用逗號(`,`)和空格分隔`last_name`和`first_name`: ~~~sql SELECT first_name, last_name, CONCAT_WS(', ', last_name, first_name) full_name FROM sales.customers ORDER BY first_name, last_name; ~~~ #### SQL Server LEFT()函數簡介 `LEFT()`函數從提供的字符串的左側提取給定數量的字符。 例如,`LEFT('SQL Server',3)`返回SQL。 `LEFT()`函數的語法如下: ~~~sql LEFT ( input_string , number_of_characters ) ~~~ 在這個語法中: * `input_string`可以是文字字符串,變量或列。`input_string`的結果的數據類型可以是除`TEXT`或`NTEXT`之外的任何數據類型,它隱式轉換為`VARCHAR`或`NVARCHAR`類型。 * `number_of_characters`是一個正整數,指定將返回`input_string`的字符數。 當`input_string`是非`Unicode`字符數據類型時,`LEFT()`函數返回值為`VARCHAR`類型;如果`input_strin`g是`Unicode`字符數據類型,則返回`NVARCHAR`類型。 #### SQL Server LEFT()函數示例 下面舉一些使用`LEFT()`函數的例子來更好地理解它。 **1\. LEFT()函數使用帶有文字字符串** 以下語句使用`LEFT()`返回字符串SQL Server的最左邊三個字符: ~~~sql SELECT LEFT('SQL Server',3) result_string; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell result_string ------------- SQL (1 row affected) ~~~ **LEFT()函數與表列一起使用** 以下示例返回`production.products`表中每個產品名稱的最左側七個字符: ~~~sql SELECT product_name, LEFT(product_name, 7) first_7_characters FROM production.products ORDER BY product_name; ~~~ #### SQL Server LEN()函數簡介 `LEN()`函數返回輸入字符串的字符數,不包括尾隨空格。 以下是`LEN()`函數的語法: ~~~sql LEN(input_string) ~~~ 在此語法中,`input_string`可以是文字字符串,字符串表達式或字符或二進制數據的列。 如果`input_string`是`VARCHAR(max)`,`NVARCHAR(max)`或`VARBINARY(max)`數據類型,則`LEN()`函數返回數據類型為[BIGINT](http://www.yiibai.com/sqlserver/sql-server-int.html "BIGINT")的值; 否則返回為`INT`類型。 #### SQL Server LEN()函數示例 下面來看一些使用`LEN()`函數的例子。 **1\. LEN()函數與文字字符串一起使用** 下面的示例使用`LEN`函數返回字符串:`"SQL Server LEN"`的字符數和帶有尾隨空格的相同字符串。 ~~~sql SELECT LEN('SQL Server LEN') length, LEN('SQL Server LEN ') length_with_trailing_blanks; ~~~ 執行上面查詢語句,得到以下結果: ![查詢結果](https://www.yiibai.com/uploads/article/2019/03/01/111018_17806.png "查詢結果") 如上所見,`LEN()`函數跳過尾隨空白。 **2\. 使用LEN()函數和列** 下面使用[示例數據庫](https://www.yiibai.com/sqlserver/sql-server-sample-database.html# "示例數據庫")中的`production.products`表進行演示。 ![產品表結構](https://www.yiibai.com/uploads/article/2019/03/01/111313_38576.png "產品表結構") 以下語句使用`LEN()`函數返回產品名稱及其長度,并按產品名稱的長度對產品進行排序。 ~~~sql SELECT product_name, LEN(product_name) product_name_length FROM production.products ORDER BY LEN(product_name) DESC; ~~~ `LOWER()`函數將字符串轉換為小寫。 以下是`LOWER()`函數的語法: ~~~sql LOWER(input_string) ~~~ 在此語法中,`input_string`可以是文字字符串,變量,字符串表達式或表列。 `input_string`的類型必須可以隱式轉換為`VARCHAR`類型。 否則,必須使用`CAST()`函數顯式地轉換`input_string`。 `LOWER()`函數返回`input_string`的小寫。 #### SQL Server LOWER()函數示例 下面來看一些使用`LOWER()`函數的例子。 **1\. 使用LOWER()函數和文字字符串** 此示例使用`LOWER()`函數將字符串:`'YiiBai'`轉換為`'yiibai'`: ~~~sql SELECT LOWER('YIIBAI') result, LOWER('YiiBai') result2; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell result result2 ------------ ------------ yiibai yiibai (1 行受影響) ~~~ **2\. 將LOWER()函數與表列一起使用** 在此示例中,將使用[示例數據庫](http://www.yiibai.com/sqlserver/sql-server-sample-database.html "示例數據庫")中的`customers`表: ![客戶表結構](https://www.yiibai.com/uploads/article/2019/03/01/112512_93883.png "客戶表結構") 以下語句使用`LOWER()`函數在連接之前將客戶的名字(`first_name`)和姓氏(`last_name`)轉換為小寫: ~~~sql SELECT first_name, last_name, CONCAT_WS( ' ', LOWER(first_name), LOWER(last_name) ) full_name_lowercase FROM sales.customers ORDER BY first_name, last_name; ~~~ #### SQL Server RIGHT()函數簡介 `RIGHT()`函數從指定字符串的右側提取給定數量的字符。 例如,`RIGHT('SQL Server',6)`返回:`'Server'`。 **RIGHT()函數的語法如下:** ~~~sql RIGHT ( input_string , number_of_characters ) ~~~ 在這個語法中: * `input_string`可以是文字字符串,變量或列。 `input_string`的結果可以是任何數據類型,但是`TEXT`或`NTEXT`除外,它隱式轉換為[VARCHAR](http://www.yiibai.com/sqlserver/sql-server-varchar.html "VARCHAR")或[NVARCHAR](http://www.yiibai.com/sqlserver/sql-server-nvarchar.html "NVARCHAR")。 * `number_of_characters`是一個正整數,指定將返回`input_string`右側的字符數。 請注意,當`input_string`是非Unicode字符數據類型時,`RIGHT()`函數返回值的類型為:`VARCHAR`;如果`input_string`是Unicode字符數據類型,則返回值的類型為:`NVARCHAR`。 #### SQL Server RIGHT()函數示例 以下語句使用`RIGHT()`返回字符串:`"SQL Server"`的最右邊`6`個字符: ~~~sql SELECT LEFT('SQL Server',6) Result_string; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell Result_string ------------- Server (1 row affected) ~~~ 以下示例從[示例數據庫](https://www.yiibai.com/sqlserver/sql-server-sample-database.html "示例數據庫")返回`production.products`表中每個產品名稱的最右邊四個字符: ~~~sql SELECT product_name, RIGHT(product_name, 4) last_4_characters FROM production.products ORDER BY product_name; ~~~ `UPPER()`函數將輸入字符串轉換為大寫。 以下是`UPPER()`函數的語法: ~~~sql UPPER(input_string) ~~~ 在此語法中,`input_string`可以是文字字符串,變量,字符串表達式或表列。 `input_string`的類型必須可以隱式轉換為`VARCHAR`。 否則,必須使用`CAST()`函數顯式轉換`input_string`。 `UPPER()`函數返回`input_string`的大寫形式。 #### SQL Server UPPER()函數示例 下面來看一些使用`UPPER()`函數的例子。 **1\. 使用UPPER()函數和文字字符串** 此示例使用`UPPER()`函數將字符串`'sql'`轉換為`'SQL'`: ~~~sql SELECT UPPER('sql') result; ~~~ 執行上面查詢語句,得到以下結果: ~~~shell result ------ SQL (1 row affected) ~~~ **2\. 將UPPER()函數與表列一起使用** 在此示例中,將使用示例數據庫中的`production.products`表: ![Upper()函數](https://www.yiibai.com/uploads/article/2019/03/03/210313_59909.png "Upper()函數") 以下語句使用`UPPER()`函數將產品名稱轉換為大寫: ~~~sql SELECT product_name, UPPER(product_name) product_name_upper FROM production.products ORDER BY product_name; ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看