Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.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 SQL连接取决于条件_Php_Mysql - Fatal编程技术网

Php SQL连接取决于条件

Php SQL连接取决于条件,php,mysql,Php,Mysql,我的问题涉及基于特定条件连接数据 例如,在表A中有一列称为user_type。如果用户类型为1,我想从表B执行内部联接。但是,如果表A中的用户类型为2,我想从表C执行内部联接 如果有人能够解决PHP中的语法问题,我们将不胜感激:-)像往常一样对两个表使用内部联接,并使用CASE语句来显示表B或表C的结果 SELECT CASE WHEN tableA.user_type = 1 THEN tableB.user_type WHEN tableA.user_

我的问题涉及基于特定条件连接数据

例如,在表A中有一列称为user_type。如果用户类型为1,我想从表B执行内部联接。但是,如果表A中的用户类型为2,我想从表C执行内部联接


如果有人能够解决PHP中的语法问题,我们将不胜感激:-)

像往常一样对两个表使用内部联接,并使用CASE语句来显示表B或表C的结果

SELECT     CASE WHEN tableA.user_type = 1 THEN tableB.user_type
                WHEN tableA.user_type = 2 THEN tableC.user_type
           END as user_type
FROM       tableA
INNER JOIN tableB 
ON         tableA.id = tableB.id
INNER JOIN tableC
ON         tableA.id = tableC.id

像往常一样对两个表使用内部联接,并使用CASE语句仅显示表B或表C的结果

SELECT     CASE WHEN tableA.user_type = 1 THEN tableB.user_type
                WHEN tableA.user_type = 2 THEN tableC.user_type
           END as user_type
FROM       tableA
INNER JOIN tableB 
ON         tableA.id = tableB.id
INNER JOIN tableC
ON         tableA.id = tableC.id

虽然是针对SQL Server的,但我相信这也适用于MySQL。编辑:或者我可以搜索一个。虽然是SQL Server,但我相信这也适用于MySQL。编辑:或者我真的可以搜索一个替代。很好的答案。。。但是当tableA.user\u type=2时,第二行的tableC.user\u type是否应该是
。。。但是当tableA.user\u type=2时,第二行的tableC.user\u type是否应该是