SQL實用技巧:如何判斷一個值是否為數字的方法

来源:https://www.cnblogs.com/chenshc/archive/2019/11/09/11827682.html
-Advertisement-
Play Games

檢測是不是數字型的數據, 兩種方法 1. ISNUMERIC ( expression ) 2. PATINDEX ( ‘%pattern%‘ , expression ) 1. ISNUMERIC ( expression ) 如果是數字類型則返回 1 ,不是則返回 0 但ISNUMERIC有時是 ...


 

檢測是不是數字型的數據, 兩種方法

1. ISNUMERIC ( expression )

2. PATINDEX ( ‘%pattern%‘ , expression )

1. ISNUMERIC ( expression )

如果是數字類型則返回 1 ,不是則返回 0

但ISNUMERIC有時是不可靠的,如果你不允許expression包含有任何字母,則會判斷錯:

如:ISNUMERIC(‘23e4’)返回 1

   ISNUMERIC(‘23d4’)返回 1

2. PATINDEX ( ‘%pattern%‘ , expression )

返回值為第一個滿足pattern的位置, 如果沒有滿足的則返回值為0

判斷是否為數字類型

PATINDEX(‘%[^0-9]%’, expression)

返回值為0,則是純數字類型

對於支持小數點和正負數寫法是

PATINDEX(‘%[^0-9|.|-|+]%’, expression)


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 上一篇自動化測試,全面且詳細的介紹了從零開始到發佈版本的步驟,這是傳統的方式,本次為大家帶來的是如何在5分鐘內使用上docker進行CI/CD,畢竟現在的容器化如火如荼,本示例是基於CentOS-7系統,在示例中, jenkins 和部署 .NET Core 應用程式,都使用 docker 來完成。 ...
  • 為了瞭解,上來先看幾篇中文博客進行簡單瞭解: 如何理解Nvidia英偉達的Multi-GPU多卡通信框架NCCL? 使用NCCL進行NVIDIA GPU卡之間的通信 nvidia-nccl 學習筆記 https://developer.nvidia.com/nccl (官方網站) https://g ...
  • 背景 By 魯迅 By 高爾基 說明: 1. Kernel版本:4.14 2. ARM64處理器,Contex A53,雙核 3. 使用工具:Source Insight 3.5, Visio 1. 概述 本文將討論 記憶體回收這個話題。 在記憶體分配出現不足時,可以通過喚醒 內核線程來非同步回收,或者通 ...
  • 解決無法定位軟體包 或 install net-tools 當我們安裝好Linux後,因為裡面有很多功能服務沒有安裝(如ifconfig、vsftpd) 所以出現一些command '***** ' not found,but can be installed with錯誤 我們就會需要安裝來使用, ...
  • 操作文件 創建文件 [root@localhost ~]# touch a.txt # 創建單個文件 [root@localhost ~]# touch b.txt c.txt # 創建多個文件 刪除文件 [root@localhost ~]# rm a.txt # 刪除單個文件 [root@loc ...
  • Mysql Join 連接查詢(中) 認識 就我平時的數據接觸來看, 連接查詢也沒有很複雜,不夠是非常需要耐心和邏輯的, 一點點將數據查出來, 拼接等. 沒有什麼技巧, 多練習就會了. 無非就是 表之間根據共同key來連接, 查詢時結合union, where, 子查詢這些... , 真的不難的, ...
  • 之前,在Codeproject發表過一篇關於用現有表中數據創建Insert的Sql語句的存儲過程,今天將其搬到這裡來,註意本存儲過程僅適用於SQL SERVER。 介紹 一些時候,你想導出一些現有表中記錄的Sql腳本以便你可以插入這些數據到另一個資料庫的相似表中。有很多方式可以做到,現在,我將跟大家 ...
  • create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20)) as begin while(charindex(@split,@c)<>0) begin insert @t( ...
一周排行
    -Advertisement-
    Play Games
  • Timer是什麼 Timer 是一種用於創建定期粒度行為的機制。 與標準的 .NET System.Threading.Timer 類相似,Orleans 的 Timer 允許在一段時間後執行特定的操作,或者在特定的時間間隔內重覆執行操作。 它在分散式系統中具有重要作用,特別是在處理需要周期性執行的 ...
  • 前言 相信很多做WPF開發的小伙伴都遇到過表格類的需求,雖然現有的Grid控制項也能實現,但是使用起來的體驗感並不好,比如要實現一個Excel中的表格效果,估計你能想到的第一個方法就是套Border控制項,用這種方法你需要控制每個Border的邊框,並且在一堆Bordr中找到Grid.Row,Grid. ...
  • .NET C#程式啟動閃退,目錄導致的問題 這是第2次踩這個坑了,很小的編程細節,容易忽略,所以寫個博客,分享給大家。 1.第一次坑:是windows 系統把程式運行成服務,找不到配置文件,原因是以服務運行它的工作目錄是在C:\Windows\System32 2.本次坑:WPF桌面程式通過註冊表設 ...
  • 在分散式系統中,數據的持久化是至關重要的一環。 Orleans 7 引入了強大的持久化功能,使得在分散式環境下管理數據變得更加輕鬆和可靠。 本文將介紹什麼是 Orleans 7 的持久化,如何設置它以及相應的代碼示例。 什麼是 Orleans 7 的持久化? Orleans 7 的持久化是指將 Or ...
  • 前言 .NET Feature Management 是一個用於管理應用程式功能的庫,它可以幫助開發人員在應用程式中輕鬆地添加、移除和管理功能。使用 Feature Management,開發人員可以根據不同用戶、環境或其他條件來動態地控制應用程式中的功能。這使得開發人員可以更靈活地管理應用程式的功 ...
  • 在 WPF 應用程式中,拖放操作是實現用戶交互的重要組成部分。通過拖放操作,用戶可以輕鬆地將數據從一個位置移動到另一個位置,或者將控制項從一個容器移動到另一個容器。然而,WPF 中預設的拖放操作可能並不是那麼好用。為瞭解決這個問題,我們可以自定義一個 Panel 來實現更簡單的拖拽操作。 自定義 Pa ...
  • 在實際使用中,由於涉及到不同編程語言之間互相調用,導致C++ 中的OpenCV與C#中的OpenCvSharp 圖像數據在不同編程語言之間難以有效傳遞。在本文中我們將結合OpenCvSharp源碼實現原理,探究兩種數據之間的通信方式。 ...
  • 一、前言 這是一篇搭建許可權管理系統的系列文章。 隨著網路的發展,信息安全對應任何企業來說都越發的重要,而本系列文章將和大家一起一步一步搭建一個全新的許可權管理系統。 說明:由於搭建一個全新的項目過於繁瑣,所有作者將挑選核心代碼和核心思路進行分享。 二、技術選擇 三、開始設計 1、自主搭建vue前端和. ...
  • Csharper中的表達式樹 這節課來瞭解一下表示式樹是什麼? 在C#中,表達式樹是一種數據結構,它可以表示一些代碼塊,如Lambda表達式或查詢表達式。表達式樹使你能夠查看和操作數據,就像你可以查看和操作代碼一樣。它們通常用於創建動態查詢和解析表達式。 一、認識表達式樹 為什麼要這樣說?它和委托有 ...
  • 在使用Django等框架來操作MySQL時,實際上底層還是通過Python來操作的,首先需要安裝一個驅動程式,在Python3中,驅動程式有多種選擇,比如有pymysql以及mysqlclient等。使用pip命令安裝mysqlclient失敗應如何解決? 安裝的python版本說明 機器同時安裝了 ...