对于一个项目,我需要同时从2个不同的表中提取数据。但是我做不到。
例如,有2个表。
表1和表2
我想在同一数组中获取状态为1的表1和表2中的数据。
我该怎么做?
我尝试了诸如左连接,右连接,内连接之类的操作。但这从未发生。因此,如果有一种方法可以通过单个查询而不使用join来获取它们,那就太好了。
table 1 : people
+-------+-----------+-----------+-------------------+
| id | name | status | phone |
+-------+-----------+-----------+-------------------+
| 1 | John | 1 | 214-444-1234 |
| 2 | Mary | 0 | 555-111-1234 |
| 3 | Jeff | 0 | 214-222-1234 |
| 4 | Bill | 1 | 817-333-1234 |
| 5 | Bob | 1 | 214-555-1234 |
+-------+-----------+-----------+-------------------+
table 2 : dog
+-------+-----------+-----------+-------------------+
| id | name | status | ids |
+-------+-----------+-----------+-------------------+
| 1 | Holly | 1 | 223-444-1234 |
| 2 | Papa | 0 | 245-111-1234 |
| 3 | Kozz | 0 | 234-222-1234 |
| 4 | Japs | 1 | 856-333-1234 |
| 5 | Moly | 1 | 256-555-1234 |
+-------+-----------+-----------+-------------------+
我想得到状态= 1个人和狗成一排。
多个代码
1- SELECT * FROM people WHERE people.status = 1
2- SELECT * FROM dog WHERE dog.status = 1
我想要这个结果:
$all_data = array(
'0' => array(
'id' => 1,
'name' => 'John',
'status' => 1,
'phone' => '214-444-1234',
),
'2' => array(
'id' => 4,
'name' => 'Bill',
'status' => 1,
'phone' => '817-333-1234',
),
'3' => array(
'id' => 5,
'name' => 'Bob',
'status' => 1,
'phone' => '214-555-1234',
),
'4' => array(
'id' => 1,
'name' => 'Holly',
'status' => 1,
'ids' => '223-444-1234',
),
'5' => array(
'id' => 4,
'name' => 'Japs',
'status' => 1,
'ids' => '856-333-1234',
),
'6' => array(
'id' => 5,
'name' => 'Moly',
'status' => 1,
'ids' => '256-555-1234',
),
);
我该怎么做?
答案 0 :(得分:2)
select id, name, status, phone from people where status = 1
UNION ALL
select id, name, status, phone from dog where status = 1