mysql中嵌套的select语句-我的代码不起作用
这是我的问题mysql中嵌套的select语句-我的代码不起作用,mysql,nested-select,Mysql,Nested Select,这是我的问题 SELECT con_serial,column2,column3 FROM (SELECT con_serial,column2,column3 FROM big_table WHERE ISNULL(contact1, '')+'#'+ISNULL(contact2, '')+'#'+ISNULL(contact3, '')+'#'+ISNULL(contact4, '')+'#'+ISNULL(contact5, '') LIKE '%' + '".$conser
SELECT con_serial,column2,column3
FROM
(SELECT con_serial,column2,column3
FROM big_table
WHERE ISNULL(contact1, '')+'#'+ISNULL(contact2, '')+'#'+ISNULL(contact3, '')+'#'+ISNULL(contact4, '')+'#'+ISNULL(contact5, '')
LIKE '%' + '".$conserial."' + '%') AS a
WHERE con_serial
IN('".$contact1."','".$contact2."','".$contact3."','".$contact4."','".$contact5."')
在内部选择中,我希望在其5列Contact1…contact5中的一列中获取具有此值$conserial的行
外部选择从中选择行,其列CONU serial是变量$contact1…$contact5之一
有人知道这里出了什么问题吗?我想where子句中的总和部分是允许的 我用两个这样的方法解决了这个问题
SELECT con_serial,,column2,column3
FROM(SELECT con_serial,column2,column3
FROM
big_table
WHERE '".$conserial."' IN(contact1,contact2,contact3,contact4,contact5)) a
WHERE con_serial IN('".$contact1."','".$contact2."','".$contact3."','".$contact4."','".$contact5."'
这就是我想要Tnx的地方 尽管你采用了新的配方,但仍然非常不清楚。 尽管如此,根据我的猜测,我还是会尽力给你一个答案 首先,我将重新阐述您的需求: PHP变量中有一些值:一个$conserial和五个$contact,其中是1-5 表结构至少包含以下列:con_serial、column2、column3和five contact,其中为1-5 您希望选择的行中,这两个行都是您需要的最奇怪的部分: 至少有一个联系人列与PHP$conserial值匹配 con_serial列至少匹配一个PHP$contact值 也就是说,请注意,您不需要有两个嵌套的SELECT:您只希望每一行满足两个条件,这样就可以在WHERE子句中对它们进行AND运算 基于此,您的查询应该是:
$query = "
SELECT con_serial, column2, column3
FROM big_table
WHERE con_serial IN ('$contact1', '$contact2', '$contact3', '$contact4', '$contact5')
AND '$con_serial' IN (contact1, contact2, contact3, contact4, contact5)
";
这真是一团糟!首先,您可能将PHP与SQL混合在一起,而不在PHP上下文中。那么不清楚是$con_串行还是五个$contact1等是选择标准。最后,这里的ISNULL是什么意思,And+是什么意思?谢谢你的帮助。相信我,如果这是一团糟,我的整个项目就是一场灾难。是的,我正在使用php,查询将在php contex中运行,实际上我对mysql有点陌生,我正在使用isnull将null值替换为“'''`我想检查任何一行中的这五列中是否有任何一列包含一个特殊值$con_serial,如果是这样,就得到它们,当然,在外部选择中使用这个结果是否有更好的结果这个@cFreedIt不容易理解您到底需要什么:根据您的描述,我看到了某种矛盾。看起来:1在contactN的五列中的任意一列中搜索PHP$conserial值;2列con_序列值应与五个PHP$contactX中的任何一个匹配。这可能不是你真正想要的。请详细说明,并向我们展示:1大_表结构;2用作标准的PHP变量列表。Tnx man i更改了结构,应该早一点这样做