嘗試在 SQL 中直接將整數 (INT) 列轉換為 VARCHAR 數據類型可能會失敗,具體取決於特定的數據庫系統。 許多 SQL 方言不直接支持 VARCHAR 作為此類轉換的目標類型。
嘗試失敗的示例:
<code class="language-sql">SELECT CAST(id AS VARCHAR(50)) AS col1 FROM t9; SELECT CONVERT(VARCHAR(50), id) AS col1 FROM t9;</code>
解決方案涉及將 INT 轉換為 CHAR 數據類型而不是 VARCHAR。 這種方法通常在各種 SQL 數據庫之間更兼容。
更正查詢:
<code class="language-sql">SELECT CAST(id AS CHAR(50)) AS col1 FROM t9; SELECT CONVERT(id, CHAR(50)) AS col1 FROM t9;</code>
請注意,原始示例中的 CONVERT
函數語法也略有不正確。 正確的語法是:
<code class="language-sql">CONVERT(expr, type)</code>
或
<code class="language-sql">CONVERT(expr USING transcoding_name)</code>
其中 expr
表示要轉換的列或值,type
指定目標數據類型。 USING transcoding_name
變體用於字符集轉換。
以上是如何在SQL中正確施放int?的詳細內容。更多資訊請關注PHP中文網其他相關文章!