Php 我想看看是否有一种聪明的方法可以将它们结合起来,并在流程中了解更多关于mysql语法的信息是的,接下来我希望选择结果集与原始帖子中的结果类似。我对字段进行了别名处理,以与示例非常接近,但返回的列显示列中的值,而不是1或0(真或假)。我需要知道它是否与输入匹

Php 我想看看是否有一种聪明的方法可以将它们结合起来,并在流程中了解更多关于mysql语法的信息是的,接下来我希望选择结果集与原始帖子中的结果类似。我对字段进行了别名处理,以与示例非常接近,但返回的列显示列中的值,而不是1或0(真或假)。我需要知道它是否与输入匹,php,mysql,sql,Php,Mysql,Sql,我想看看是否有一种聪明的方法可以将它们结合起来,并在流程中了解更多关于mysql语法的信息是的,接下来我希望选择结果集与原始帖子中的结果类似。我对字段进行了别名处理,以与示例非常接近,但返回的列显示列中的值,而不是1或0(真或假)。我需要知道它是否与输入匹配,而不是实际值。如果不能做到这一点没关系,尽管可以让它做到这一点,为什么不简单地接受它返回了一个值呢?我的意思是,如果您想确保它不重复,您将希望此查询不返回任何记录。我向用户显示的错误消息将是1)请修复化合物编号或2)请修复供应商化合物编号。




我想看看是否有一种聪明的方法可以将它们结合起来,并在流程中了解更多关于mysql语法的信息是的,接下来我希望选择结果集与原始帖子中的结果类似。我对字段进行了别名处理,以与示例非常接近,但返回的列显示列中的值,而不是1或0(真或假)。我需要知道它是否与输入匹配,而不是实际值。如果不能做到这一点没关系,尽管可以让它做到这一点,为什么不简单地接受它返回了一个值呢?我的意思是,如果您想确保它不重复,您将希望此查询不返回任何记录。我向用户显示的错误消息将是1)请修复化合物编号或2)请修复供应商化合物编号。我不想执行两个单独的查询,而是想看看是否有一种聪明的方法可以将它们结合起来,并在过程+1中了解更多有关mysql语法的信息:虽然这被标记了(但没有给出理由),但这种模式实际上可以大大超过
的使用,其中a='x'或b='y'
。这是因为两个选择中的每一个都可以使用不同的索引;在基于
的版本中,情况并非如此。因此,使用
可能导致完全扫描,而此版本可能导致两次索引查找。我是否可以使用此选项将列别名为compoundDupFound和vendorCompoundDupFound结果集中的每一列显示是否找到匹配项?这可能是可能的。如果我很了解你(如果我不了解,请纠正我),你想数一数所有重复的内容吗?如果是,则应使用UNION all/OR从数据库中拾取所有重复记录,并使用聚合函数(count)实际计数所有重复记录。无需计数,只需查看匹配的列(无、一或两者)。我将为每种情况显示特定的错误消息,这就是为什么最好在一个案例中完成所有操作。+1:虽然这被标记下来(但没有给出原因),但这种模式实际上可以大大超过
的使用,其中a='x'或b='y'
。这是因为两个选择中的每一个都可以使用不同的索引;在基于
的版本中,情况并非如此。因此,使用
可能导致完全扫描,而此版本可能导致两次索引查找。我是否可以使用此选项将列别名为compoundDupFound和vendorCompoundDupFound结果集中的每一列显示是否找到匹配项?这可能是可能的。如果我很了解你(如果我不了解,请纠正我),你想数一数所有重复的内容吗?如果是,则应使用UNION all/OR从数据库中拾取所有重复记录,并使用聚合函数(count)实际计数所有重复记录。无需计数,只需查看匹配的列(无、一或两者)。我将为每种情况显示特定的错误消息,这就是为什么最好在一个案例中完成所有操作。+1:虽然这被标记下来(但没有给出原因),但这种模式实际上可以大大超过
的使用,其中a='x'或b='y'
。这是因为两个选择中的每一个都可以使用不同的索引;在基于
的版本中,情况并非如此。因此,使用
可能导致完全扫描,而此版本可能导致两次索引查找。我是否可以使用此选项将列别名为compoundDupFound和vendorCompoundDupFound结果集中的每一列显示是否找到匹配项?这可能是可能的。如果我很了解你(如果我不了解,请纠正我),你想数一数所有重复的内容吗?如果是,则应使用UNION all/OR从数据库中拾取所有重复记录,并使用聚合函数(count)实际计数所有重复记录。无需计数,只需查看匹配的列(无、一或两者)。我将为每种情况显示特定的错误消息,这就是为什么最好在一个案例中完成所有操作。+1:虽然这被标记下来(但没有给出原因),但这种模式实际上可以大大超过
的使用,其中a='x'或b='y'
。这是因为两个选择中的每一个都可以使用不同的索引;在基于
的版本中,情况并非如此。因此,使用
可能导致完全扫描,而此版本可能导致两次索引查找。我是否可以使用此选项将列别名为compoundDupFound和vendorCompoundDupFound结果集中的每一列显示是否找到匹配项?这可能是可能的。如果我很了解你(如果我不了解,请纠正我),你想数一数所有重复的内容吗?如果是,则应使用UNION all/OR从数据库中拾取所有重复记录,并使用聚合函数(count)实际计数所有重复记录。无需计数,只需查看匹配的列(无、一或两者)。我将为每种情况显示特定的错误消息,这就是为什么最好在一个环境中完成所有操作。
SELECT materialID FROM materials WHERE compoundNumber = "<some user input1>";
SELECT materialID FROM materials WHERE vendorCompoundNumber = "<some user input2>";
materialID | compoundDupFound | vendorCompoundDupFound 1 | 0 | 1 - - or - - 2 | 1 | 0 - - or - - 3 | 1 | 1
SELECT materialID, compoundNumber AS compoundDupFound, vendorCompoundNumber AS vendorCompoundDupFound
FROM materials 
WHERE compoundNumber = "input1"
   OR vendorCompoundNumber = "input2";
SELECT materialID, compoundNumber AS compoundDupFound, NULL as vendorCompoundDupFound
    FROM materials 
    WHERE compoundNumber = "input1"
UNION
SELECT materialID, NULL, vendorCompoundNumber AS vendorCompoundDupFound
    FROM materials 
    WHERE vendorCompoundNumber = "input2"
SELECT materialID FROM materials WHERE compoundNumber = "<some user input1>"
UNION 
SELECT materialID FROM materials WHERE vendorCompoundNumber = "<some user input2>"