CAST() এবং REGEXP ব্যবহার করে ইন্টিজার যাচাই
MySQL-এ একটি স্ট্রিং মান পূর্ণসংখ্যা কিনা যাচাই করার দুটি পদ্ধতি রয়েছে।
পদ্ধতি ১: CAST() ফাংশন
CAST(value AS UNSIGNED) — যদি মান নন-নিউমেরিক হয়, ০ রিটার্ন করে (ওয়ার্নিংসহ)।
mysql> SELECT CAST('John123456' AS UNSIGNED); -- 0 (warning)
mysql> SELECT CAST('123456' AS UNSIGNED); -- 123456
mysql> SELECT CAST('78.90' AS UNSIGNED); -- 78 (warning)
পদ্ধতি ২: REGEXP রেগুলার এক্সপ্রেশন (নির্দিষ্ট)
শুধু পূর্ণসংখ্যা (অপশনাল মাইনাস সাইন সহ) 매چ করার জন্য:
mysql> CREATE TABLE CheckingIntegerDemo (Value VARCHAR(200));
mysql> INSERT INTO CheckingIntegerDemo VALUES ('John123456'), ('123456'), ('123.456');
mysql> SELECT Value FROM CheckingIntegerDemo WHERE Value REGEXP '^-?[0-9]+$';
+--------+
| Value |
+--------+
| 123456 |
+--------+
ব্যাখ্যা: ^-?[0-9]+$ → শুরুতে অপশনাল -, তারপর এক বা অধিক ডিজিট, শেষ। ফ্লোট (123.456) বা অক্ষর মিশ্রিত মান ম্যাচ করে না।