Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 仅在mysql的IN子句中显示指定的id_Php_Mysql - Fatal编程技术网

Php 仅在mysql的IN子句中显示指定的id

Php 仅在mysql的IN子句中显示指定的id,php,mysql,Php,Mysql,sql命令的第一部分是连接3个费用表的地方。它们都是一样的,只是背景不同而已。我希望该命令只显示程序编号100和200。所以只有两个结果。但是它在mysql中显示了很多结果 这就是结果 您发布的查询基本上有三个查询: SELECT * FROM `charges` UNION ALL SELECT * FROM `confinement` UNION ALL SELECT * FROM `ultrasound` WHERE procedure_no IN

sql命令的第一部分是连接3个费用表的地方。它们都是一样的,只是背景不同而已。我希望该命令只显示程序编号100和200。所以只有两个结果。但是它在mysql中显示了很多结果

这就是结果

您发布的查询基本上有三个查询:

    SELECT * FROM `charges`
    UNION ALL
    SELECT * FROM `confinement`
    UNION ALL
    SELECT * FROM `ultrasound` 
WHERE procedure_no IN (100, 200)
ORDER BY FIELD(procedure_no,100,200);
也就是说,目前只有超声波通过程序编号Try进行过滤(未测试):


这里有基本的SQL FIDLE:

谢谢!我不会猜到的。@user1967153没问题:)
SELECT * FROM `charges`

SELECT * FROM `confinement`


SELECT * FROM `ultrasound` WHERE procedure_no IN (100, 200) ORDER BY FIELD(procedure_no,100,200);
SELECT * FROM
    (SELECT * FROM `charges`
    UNION ALL
    SELECT * FROM `confinement`
    UNION ALL
    SELECT * FROM `ultrasound` ) AS t1
WHERE t1.procedure_no IN (100, 200)
ORDER BY FIELD(t1.procedure_no,100,200);