Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana ISNUMERIC() Bekerja di SQL Server

Di SQL Server, Anda dapat menggunakan ISNUMERIC() berfungsi untuk mengetahui apakah suatu ekspresi numerik atau tidak.

Fungsi mengembalikan 1 jika ekspresinya numerik, dan 0 jika bukan.

Untuk menggunakan fungsi ini, cukup berikan nilai/ekspresi ke fungsi saat memanggilnya.

Contoh 1 – Ekspresi Numerik

Berikut adalah contoh untuk mendemonstrasikan apa yang terjadi saat Anda meneruskan ekspresi numerik ke fungsi ini.

SELECT ISNUMERIC(250) AS Result;

Hasil:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Dalam hal ini, nilainya numerik dan hasilnya adalah 1.

Kami mendapatkan hasil yang sama meskipun nilai diberikan sebagai string (diapit oleh tanda kutip tunggal).

SELECT ISNUMERIC('250') AS Result;

Hasil:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Contoh 2 – Ekspresi Non-Numerik

Inilah yang terjadi jika nilainya tidak numerik.

SELECT ISNUMERIC('Hey!') AS Result;

Hasil:

+----------+
| Result   |
|----------|
| 0        |
+----------+

Contoh 3 – Contoh Basis Data

Berikut ini contoh penggunaan ISNUMERIC() dalam WHERE klausa saat menanyakan database:

USE WideWorldImportersDW;
SELECT COUNT(*) AS [Count]
FROM Dimension.Customer
WHERE ISNUMERIC([Postal Code]) = 1;

Hasil:

+---------+
| Count   |
|---------|
| 402     |
+---------+

Ini mengembalikan jumlah semua baris dengan kode pos numerik.

Hasil Tak Terduga? Ketika Non-Numerik IS Numerik

Beberapa karakter diperlakukan sebagai numerik, meskipun bukan angka. Ini adalah sesuatu yang perlu Anda waspadai saat menggunakan fungsi ini, jika tidak, Anda bisa mendapatkan hasil yang tidak Anda harapkan.

Lihat Karakter Non-Angka yang Mengembalikan Positif saat menggunakan ISNUMERIC() untuk penjelasan dan contoh.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Statistik Tambahan SQL Server 2014

  2. T-SQL trim   (dan karakter non-alfanumerik lainnya)

  3. ATAU Operator korsleting di SQL Server

  4. Pemeriksaan Kesehatan SQL Server Proaktif, Bagian 3:Pengaturan Instans dan Basis Data

  5. membandingkan kolom dengan daftar nilai di t-sql