-
Anonymous
Запрос CodeIgniter с запятыми-Joins возвращает значения столбцов из непреднамеренной таблицы [Duplicate]
Сообщение
Anonymous »
Я пытаюсь выполнить этот запрос в Codeigniter 2.2. Я прочитал документацию
http://www.codeigniter.com/user_guide/d ... sults.html.
код моего контроллера - это
Код: Выделить всё
$query = $this->db->query("
SELECT a.id, a.child, a.immune, a.immun_date,
b.id, b.fname, b.lname,
c.id, c.name
FROM immun a,
children b,
immun_master c
WHERE a.child = b.id
AND c.id = a.immune
");
$immun = array();
foreach ($query->result() as $row) {
$immun[] = array(
$row->id,
$row->child,
$row->immune,
$row->immun_date,
);
}
< /code>
Результаты, которые повернуты: < /p>
array (
0 =>
array (
0 => '2',
1 => '1001',
2 => '2',
3 => '2011-04-23',
),
1 =>
array (
0 => '3',
1 => '1001',
2 => '3',
3 => '2011-04-30',
),
2 =>
array (
0 => '6',
1 => '1002',
2 => '6',
3 => '2011-04-30',
),
3 =>
array (
0 => '5',
1 => '1002',
2 => '5',
3 => '2011-04-29',
),
4 =>
array (
0 => '1',
1 => '1003',
2 => '1',
3 => '2011-01-06',
),
5 =>
array (
0 => '3',
1 => '1005',
2 => '3',
3 => '2010-10-04',
),
6 =>
array (
0 => '3',
1 => '1231',
2 => '3',
3 => '2014-08-01',
),
)
< /code>
Это неправильные результаты. Я ожидал, что это объединенные результаты запроса. Ниже я получаю, когда запускаю запрос в phpmyadmin < /p>
id child immune immun_date id fname lname id name
1 1001 2 2011-04-23 1001 Johny Jame 2 Swine Flu Vaccine
2 1001 3 2011-04-30 1001 Johny Jame 3 Bird Flu Vaccine
3 1002 6 2011-04-30 1002 Chelsea James 6 Hepatitis B
4 1002 5 2011-04-29 1002 Chelsea James 5 Measles Vaccine
5 1003 1 2011-01-06 1003 Charles Jacob 1 H1N1 Vaccine
6 1005 3 2010-10-04 1005 Hansome Little 3 Bird Flu Vaccine
7 1231 3 2014-08-01 1231 Jennifer Ylanan 3 Bird Flu Vaccine
< /code>
Теперь было бы неплохо, если бы я мог получить CI, чтобы вернуть тот же набор объединенных данных. Я думаю, что это только возвращает данные из Immun
, а CI не соединяется с данными из других таблиц.
Как получить данные, которые мне нужны?
Подробнее здесь:
https://stackoverflow.com/questions/284 ... nded-table
1746169086
Anonymous
Я пытаюсь выполнить этот запрос в Codeigniter 2.2. Я прочитал документацию http://www.codeigniter.com/user_guide/database/results.html.
код моего контроллера - это
[code]$query = $this->db->query("
SELECT a.id, a.child, a.immune, a.immun_date,
b.id, b.fname, b.lname,
c.id, c.name
FROM immun a,
children b,
immun_master c
WHERE a.child = b.id
AND c.id = a.immune
");
$immun = array();
foreach ($query->result() as $row) {
$immun[] = array(
$row->id,
$row->child,
$row->immune,
$row->immun_date,
);
}
< /code>
Результаты, которые повернуты: < /p>
array (
0 =>
array (
0 => '2',
1 => '1001',
2 => '2',
3 => '2011-04-23',
),
1 =>
array (
0 => '3',
1 => '1001',
2 => '3',
3 => '2011-04-30',
),
2 =>
array (
0 => '6',
1 => '1002',
2 => '6',
3 => '2011-04-30',
),
3 =>
array (
0 => '5',
1 => '1002',
2 => '5',
3 => '2011-04-29',
),
4 =>
array (
0 => '1',
1 => '1003',
2 => '1',
3 => '2011-01-06',
),
5 =>
array (
0 => '3',
1 => '1005',
2 => '3',
3 => '2010-10-04',
),
6 =>
array (
0 => '3',
1 => '1231',
2 => '3',
3 => '2014-08-01',
),
)
< /code>
Это неправильные результаты. Я ожидал, что это объединенные результаты запроса. Ниже я получаю, когда запускаю запрос в phpmyadmin < /p>
id child immune immun_date id fname lname id name
1 1001 2 2011-04-23 1001 Johny Jame 2 Swine Flu Vaccine
2 1001 3 2011-04-30 1001 Johny Jame 3 Bird Flu Vaccine
3 1002 6 2011-04-30 1002 Chelsea James 6 Hepatitis B
4 1002 5 2011-04-29 1002 Chelsea James 5 Measles Vaccine
5 1003 1 2011-01-06 1003 Charles Jacob 1 H1N1 Vaccine
6 1005 3 2010-10-04 1005 Hansome Little 3 Bird Flu Vaccine
7 1231 3 2014-08-01 1231 Jennifer Ylanan 3 Bird Flu Vaccine
< /code>
Теперь было бы неплохо, если бы я мог получить CI, чтобы вернуть тот же набор объединенных данных. Я думаю, что это только возвращает данные из Immun [/code], а CI не соединяется с данными из других таблиц.
Как получить данные, которые мне нужны?
Подробнее здесь: [url]https://stackoverflow.com/questions/28460396/codeigniter-query-with-comma-joins-returns-column-values-from-unintended-table[/url]