Ersetzen Sie die von Kommas getrennten IDs durch entsprechende Namen in einem Codesigniter-Abfrageergebnissatz aus.
Posted: 12 May 2025, 00:40
Ich habe drei Tabellen wie unten:
test_case
task_categories (mit test_case -Tabelle mit Anforderung_ID reflektiert)
Projekte (Refed mit test_case -Tabelle mit project_id)
Ich möchte eine Abfrage mit einem WHERE -Zustand erstellen, indem er Parameter wie project_id = 5 wie unten überträgt:
test_case
Code: Select all
id project_id requirement_id
1 5 11,12
2 4 12,13
3 5 10,12
Code: Select all
id name
10 ten
11 eleven
12 twelve
13 thirtien
Code: Select all
id name
4 P1
5 P2
Code: Select all
id project_name requirement_name
1 P2 eleven,twelve
3 P2 ten,twelve
< /code>
Ich habe den folgenden Code in meinem Modell ausprobiert: < /p>
public function display($project_id) {
$sql = "
SELECT i.id as id, i.project_id as project_id, requirement_id, GROUP_CONCAT(c.name SEPARATOR '\n
*') as req_name, p.id as projects_id FROM test_case i, task_categories c, projects p
WHERE FIND_IN_SET(c.id, i.requirement_id) AND i.project_id = $project_id
GROUP BY i.id";
$query = $this->db->query($sql);
return $query->result();
}