Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में SQL क्वेरी में ArrayList<> IN क्लॉज के रूप में कैसे पास करें

मार्करों की सही संख्या के साथ SQL कथन बनाएँ, और सभी मान सेट करें।

सावधान रहें:डेटाबेस में अनुमत मापदंडों की संख्या की एक सीमा होती है, हालांकि यह MySQL के लिए बहुत अधिक है (65535 )।

char[] markers = new char[list.size() * 2 - 1];
for (int i = 0; i < markers.length; i++)
    markers[i] = (i & 1 == 0 ? '?' : ',');
String sql = "select * from employee where id in (" + markers + ")";
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
    int idx = 1;
    for (String value : list)
        stmt.setString(idx++, value);
    try (ResultSet rs = stmt.executeQuery()) {
        while (rs.next()) {
            // code here
        }
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL रूट पासवर्ड कैसे निकालें

  2. SQL का उपयोग करके SUM और SUBTRACT कैसे करें?

  3. my.ini में कैरेक्टर_सेट_डेटाबेस और कॉलेशन_डेटाबेस को utf8 पर कैसे सेट करें?

  4. डेटाबेस में पैरेंट टेबल और चाइल्ड टेबल क्या है?

  5. क्या यह एक सुरक्षित/मजबूत इनपुट सैनिटाइजेशन फ़ंक्शन है?