MySQL объединяет несколько строк объединенного набора результатов [дубликат]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 MySQL объединяет несколько строк объединенного набора результатов [дубликат]

Сообщение Anonymous »

Вот запрос активной записи моего codeigniter, над которым я работаю

Код: Выделить всё

$this->db->select('wo.*,
en.equipment_name as conventional_name,
cat.name as category_name,
toe.name as type_of_equipment_text,
wos.wo_status,
l.name as location_name, spl.name as supplier_name,
ht.shortcode as type_code, c.name as city_name,
dt.name as district_name, d.name as division_name, z.name as zone_name')
->from('work_orders wo')
->join(DB_PREFIX . 'equipment e', 'e.ID = wo.tag_num', 'left')
->join(DB_PREFIX . 'equipment_names en', 'en.ID = e.conventional_name', 'left')
->join(DB_PREFIX . 'categories cat', 'cat.ID = en.category_id', 'left')
->join(DB_PREFIX . 'equipment_type toe', 'toe.ID = e.type_of_equipment', 'left')
->join(DB_PREFIX . 'suppliers spl', 'spl.ID = e.purchased_from_supplier_name AND spl.status=1', 'left')
->join(DB_PREFIX . 'locations l', 'l.ID = e.city_id', 'left')
->join(DB_PREFIX . 'hospital_type ht', 'ht.ID = l.type_id', 'left')
->join(DB_PREFIX . 'cities c', 'c.ID = l.city_id', 'left')
->join(DB_PREFIX . 'districts dt', 'dt.ID = c.district_id', 'left')
->join(DB_PREFIX . 'divisions d', 'd.ID = dt.division_id', 'left')
->join('work_orders_status wos', 'wos.id = wo.wo_status', 'left')
->join(DB_PREFIX . 'zones z', 'z.ID = d.zone_id', 'left')
->where("find_in_set($get_engineer_id, wo.`assigned_to_enggs`)");
В таблице work_orders у меня есть столбец, назначенный_to_enggs, в котором для каждой записи указаны идентификаторы сотрудников, разделенные запятыми. Я хочу получить имена сотрудников, разделенные запятыми, по этим идентификаторам, объединив их с таблицей сотрудников.

Вот моя таблица work_orders

Код: Выделить всё

╔══════════╦═══════════════════╗
║ ID       ║assigned_to_enggs  ║
╠══════════╬═══════════════════╣
║ 1        ║ 2,4,5             ║
║ 2        ║ 1,2               ║
║ 3        ║ 2                 ║
║ 4        ║ 3,1               ║
║ 5        ║ 2,4,1             ║
╚══════════╩═══════════════════╝
таблица сотрудников

Код: Выделить всё

╔══════════╦═════════════════╗
║ emp_id   ║    name         ║
╠══════════╬═════════════════╣
║ 1        ║ Irfan           ║
║ 2        ║ Kamran Khan     ║
║ 3        ║ Faiza           ║
║ 4        ║ Atif            ║
║ 5        ║ Farrukh         ║
╚══════════╩═════════════════╝
Я пробовал GROUP_CONCAT(), но у меня не сработало. Может ли кто-нибудь мне помочь? Заранее спасибо

Подробнее здесь: https://stackoverflow.com/questions/562 ... result-set
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»