如何在select查询的where子句中使用数组值?

时间:2015-06-18 06:20:22

标签: php

我知道这是一个重复的...

但我找不到我想要的东西..

我有一个像这样的数组值

$startpoint= (implode(",",$_SESSION['strtpnt1']));
// "chennai,madurai,tirunelveli,Kanyakumari"

我在选择框中使用select查询从数据库中获取不在数组中的数据

我的查询如下:

$sql21 = "select start from tbl_place where start NOT IN='" . implode(",",$_SESSION['strtpnt1']) ."'";//i tried this and 

$sql21 = "select start from tbl_place where start NOT IN='" . $startpoint ."'";//this 

2 个答案:

答案 0 :(得分:0)

您需要添加',因为它们是string s -

$startpoint= implode("','", $_SESSION['strtpnt1']); // Escape values if needed

查询将是 -

$sql21 = "select start from tbl_place where start NOT IN ('" . $startpoint ."')";

不需要=

答案 1 :(得分:0)

在mySQL中使用IN的正确语法是:

SELECT something FROM something WHERE something NOT IN (1, 2, 3, 4)

所以不要使用=。