Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में FIND_IN_SET() से कॉमा-सेपरेटेड स्ट्रिंग कॉलम में मान खोजकर WHERE IN जैसा फ़िल्टर करें


FIND_IN_SET() उपयोग

select * from yourTableName where find_in_set('searchValue', csvColumn) > 0;

उदाहरण

mysql> create table demo81 (id int not null auto_increment primary key, username varchar(200));
mysql> insert into demo81(username) values('John,Chris,David'), ('Mike,Sam'), ('Chris,Bob,Sam'), ('Mike,John,Chris');

"Chris" खोजना

mysql> select * from demo81 where find_in_set('Chris', username) > 0;
+----+------------------+
| id | username         |
+----+------------------+
| 1  | John,Chris,David |
| 3  | Chris,Bob,Sam    |
| 4  | Mike,John,Chris  |
+----+------------------+

लाभ: सटीक टोकन मिलान; "Chris" → "Christina" से मेल नहीं।


  1. - MySQL में कॉलम मानों से बेतरतीब ढंग से 2 मान चुनें?

    बेतरतीब ढंग से चुनने के लिए ORDER BY RAND() का उपयोग करें। MySQL में केवल 2 मान चुनने के लिए LIMIT 2 का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1815 ( Question text ); Query OK, 0 rows affected (0.00 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: my

  1. - MySQL में WHERE क्लॉज में तिथि घटाकर ROW कैसे चुनें?

    TIMESTAMPDIFF() फ़ंक्शन दो तिथियों के बीच अंतर (मिनट, घंटे, दिन आदि) निकालने के लिए: TIMESTAMPDIFF(UNIT, start_datetime, end_datetime) उदाहरण insert into demo42 values(2020-01-10 12:30:05), (2019-02-24 10:40:45), (2020-05-12 05:45:55), (2020-05-12 05:40:55), (2020-05-12 05:42:55); 5 मिनट के अंदर

  1. - MySQL में WHERE IN के साथ NULL मान कैसे संभालें?

    सिंटैक्स select yourColumnName1, yourColumnName2 from yourTableName where yourValue in(yourColumnName1, yourColumnName2) or yourColumnName1 is NULL; उदाहरण insert into demo60(first_name,last_name) values(John,Smith), (John,Doe), (null,Brown), (David,Miller), (David,Smith), (Chris,Brown); क्वेरी