Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.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从一个id获取两个值_Php_Mysql - Fatal编程技术网

Php MySql从一个id获取两个值

Php MySql从一个id获取两个值,php,mysql,Php,Mysql,下面有一个sql查询,请注意从表1id返回的字段receiver 我的问题是如何在receiver位置获取接收者FirstName和LastName SELECT DISTINCT FirstName, LastName, table_2.status, (select FirstName, LastName from table_1 where table_1.id = table_2.receiver) as receiver FROM table_1

下面有一个sql查询,请注意从
表1
id返回的字段
receiver

我的问题是如何在
receiver
位置获取接收者
FirstName
LastName

SELECT DISTINCT
    FirstName, 
    LastName, 
    table_2.status, 
    (select FirstName, LastName from table_1 where table_1.id = table_2.receiver) as receiver 
FROM table_1
INNER JOIN 
    table_2 on table_1.key_2 = CONCAT('OFFLINE-', table_2.id)
ORDER BY FirstName, LastName
我在我的SQL中添加了一个子查询,但这给了我一个语法错误:(

这是有效的:)

这是有效的:)


您可以使用别名而不是子查询:

SELECT DISTINCT
    t2.FirstName, 
    t2.LastName, 
    t2.status, 
    CONCAT(t1.FirstName,' ', t1.LastName) as receiver
FROM table_1 t1
INNER JOIN 
    table_2 t2 on t1.key_2 = CONCAT('OFFLINE-', t2.id)
ORDER BY t1.FirstName, t1.LastName

您可以使用别名而不是子查询:

SELECT DISTINCT
    t2.FirstName, 
    t2.LastName, 
    t2.status, 
    CONCAT(t1.FirstName,' ', t1.LastName) as receiver
FROM table_1 t1
INNER JOIN 
    table_2 t2 on t1.key_2 = CONCAT('OFFLINE-', t2.id)
ORDER BY t1.FirstName, t1.LastName

接收器数据存储在哪里,哪个表?你能从表格和预期结果中添加样本数据吗?你所说的“接收点”是什么意思?是否要更改输出列的顺序?接收器数据存储在表1中。例如,每个数据行都有一个id和一个接收器,接收器是表1中其他人的id。我希望得到接收器的名字和姓氏。接收器数据存储在哪里,哪个表?你能从表格和预期结果中添加样本数据吗?你所说的“接收点”是什么意思?是否要更改输出列的顺序?接收器数据存储在表1中。例如,每个数据行都有一个id和一个接收器,接收器是表1中其他人的id。我想知道收信人的名字和姓氏。
SELECT DISTINCT
    t2.FirstName, 
    t2.LastName, 
    t2.status, 
    CONCAT(t1.FirstName,' ', t1.LastName) as receiver
FROM table_1 t1
INNER JOIN 
    table_2 t2 on t1.key_2 = CONCAT('OFFLINE-', t2.id)
ORDER BY t1.FirstName, t1.LastName