Php 如何通过特定字段中的ID获取另一个表的名称?
我正在研究一个类型系统,想知道如何通过另一个特定字段中的ID集从一个表中获取“名称” 假设此列引用此视频所属类型的ID:Php 如何通过特定字段中的ID获取另一个表的名称?,php,mysql,Php,Mysql,我正在研究一个类型系统,想知道如何通过另一个特定字段中的ID集从一个表中获取“名称” 假设此列引用此视频所属类型的ID: | genres | 1,2,3 <--- This field for example. | 5,9,10 我想把这个领域变成这样: | genre_id | genre_title | 1 | Comedy | 2 | Romance | 3 | School 喜剧、浪漫、学校 我用一个像这样的php代码来获得按性
| genres
| 1,2,3 <--- This field for example.
| 5,9,10
我想把这个领域变成这样:
| genre_id | genre_title
| 1 | Comedy
| 2 | Romance
| 3 | School
喜剧、浪漫、学校
我用一个像这样的php代码来获得按性别过滤的信息。
$conn = mysqli_connect("$host","$dbuser","$dbpw","$db");
if (mysqli_connect_errno()){
echo "Falha ao ligar à Base de Dados: " . mysqli_connect_error();
}
$gender = $_GET['g'];
$getGender = "FIND_IN_SET('$gender',a_generos) = $gender";
$result = mysqli_query($conn, "SELECT * FROM tblAnimes WHERE $getGender") or die(mysqli_error($conn));
while ($home = mysqli_fetch_assoc($result)){
echo "Name: " . $home['a_titulo'];
echo "Publication date: " . $home['a_dia'];
echo "Genres IDs (por agora): " . $home['a_generos']; //Get something like this (1,2,3) but i want this (Comedy, Romance, School)
}
?>
主要问题是如何将它(1,2,3)转化为(喜剧、浪漫、学校)。最好的方法是重构表结构,这样就不会在单个字段中存储逗号分隔的值列表;更好的方法是将主表关联起来的M-to-N表。这个链接有助于实现这一点,我不知道最好的方法是重构表结构,这样就不会在单个字段中存储逗号分隔的值列表;更好的方法是使用M-to-N表来关联主表。这个链接在这方面很有帮助,我不理解