Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL, PHP:Изберете * от таблица, където идентификаторът не е в масива

В случай, че $all е масивът, от който искате да извлечете нежеланите идентификатори, това може да е това, от което се нуждаете след предоставения от вас код:

$ids_to_exclude = array();

// iterate through servers
foreach ($all as $server_id => $dates) {
    // iterate through dates of each server
    foreach ($dates as $date => $id) {
        // If a value is not in the array, add it.
        // In case ids don't repeat, you won't need this if
        if (!in_array($id, $ids_to_exclude)) {
             // add $id to the array
             $ids_to_exclude[] = $id;
        }
    }
}

$sql_condition = "where `id` not in (".implode(",",$ids_to_exclude).")";

Просто бъдете внимателни, когато пишете заявки с конкатенация на низове. Прочетете за SQL инжектиране и как да го предотвратим. Използвайте Подготвени изявления вместо чиста конкатенация.



  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. MySQL Структура на пазарската количка

  3. Как да създам Django модел с ForeignKeys, който не каскадно изтрива към своите деца?

  4. PDO връща целочислени колони като String в PHP5.4

  5. ГРЕШКА 1878 (HY000):Неуспешно записване на временен файл