如何查找不在此数组中的所有记录?(MySQL的)

2 html php mysql sql database

我有一个包含一堆ID的数组:s ...

在mysql中,我无法弄清楚如何编写查询以查找不在此数组中的所有记录.

    SELECT * FROM main_table WHERE ..........
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

谢谢

Sar*_*raz 11

像这样:

$str = implode(',', $your_array);
Run Code Online (Sandbox Code Playgroud)

上面的语句将数组转换为逗号分隔的字符串.

"SELECT * FROM main_table WHERE id NOT IN ('$str')"
Run Code Online (Sandbox Code Playgroud)

更多信息:

  • 小调整:`$ str = count($ your_array)!= 0?implode(',',$ your_array); :"null";`.`IN`对空括号反应不好. (2认同)

Ail*_*lyn 5

SELECT * 
  FROM main_table
 WHERE id NOT IN(1, 2, 3)
Run Code Online (Sandbox Code Playgroud)