从多个表中获取多个数据

时间:2015-08-29 12:18:53

标签: mysql sql select group-by group-concat

我尝试从两个连接的表中获取数据。

$query="SELECT a.*, (SELECT `city_id` FROM `staff-city`) as cities FROM `staff`  as a WHERE a.id=2";

我收到错误:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[21000]: Cardinality violation: 1242 Subquery returns more than 1 row'

这是逻辑,因为这个id有三个城市。 主要目标是从员工那里得到一行id(2)并加入员工城市的所有数据(城市名称) - 用一个查询做,我需要最终结果如下:

array (
[id]=>value,
[..]=>values,
[cities]=>array(
    [0]=>2,
    [1]=>26
)

提前致谢!

1 个答案:

答案 0 :(得分:0)

$query="SELECT a.*, b.city_id FROM staff a , staff-city b WHERE a.id=2"