从具有相同结构的多个表中选择查询


Select query from more tables, which have the same structure

我如何从更多的表中选择查询,当列有一些结构。因此,我想使用变量

从旅行和历史表中选择id, poza等。
    $sql = "SELECT id, titlu, link, poza, alt, keywords FROM istorie WHERE approved='1' LIKE '%''".$keyword."''%'='%''".$keyword."''%' ORDER BY RAND() LIMIT 3" ;
$query = mysqli_query($con, $sql);
if(!$query){
     printf("Error: %s'n", mysqli_error($con));
    exit();}
$istorielist = '';
while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
    $id = $row["id"];
    $titlu = $row["titlu"];
    $link = $row["link"];
    $poza = $row["poza"];
    $alt = $row["alt"];
    $istorielist .= '<div id="articol-content-more"><a href="/istorie/'.$link.'"><img src="/images/'.$poza.'.jpg"class="articol-content-more-image" alt="'.$alt.'"><p class="articol-content-more-title">'.$titlu.'</p></a><span><a class="articol-content-more-afla" href="/istorie/'.$link.'">Citește mai multe</a></span><span class="articol-content-more-fl"><div class="fb-share-button" data-layout="button_count" data-href="http://esticurios.ro/istorie/'.$link.'"></div></span></div>';
}
mysqli_free_result($query);

我还想集成来自表travel的查询,不仅来自表istorie,两者都有一些结构id, titlu, link, poza, alt,关键字

如果两个表之间的列数和列类型匹配,则可以使用union或union all
Union只选择两个表之间的字典行,Union ALL选择所有行

$sql = "SELECT id, titlu, link, poza, alt, keywords 
          FROM istorie 
          WHERE approved='1' LIKE '%''".$keyword."''%'='%''".$keyword."''%' ORDER BY RAND() LIMIT 3
          UNION ALL 
        SELECT id, titlu, link, poza, alt, keywords 
          FROM travel  
          WHERE approved='1' LIKE '%''".$keyword."''%'='%''".$keyword."''%' ORDER BY RAND() LIMIT 3              
          " ;