如何在SQL中连接2个表

时间:2013-04-02 01:49:59

标签: php sql join mysqli

$results = mysqli_query($con,"SELECT * FROM dayalpha WHERE d_id= '".$_POST['dtb']."'");

echo "<table border='0'>
<tr>
<td>Day Name</td>
<td>Type</td>
<td>Alphabet</td>
</tr>";

while($row = mysqli_fetch_array($results))
 {
  echo "<tr>";
  echo "<td>" . $row['dayname'] . "</td>";
  echo "<td>" . $row['type'] . "</td>";
  echo "<td>" . $row['alpha'] ."</td>";
  echo "<td>" . $row['alpha1'] ."</td>";
  echo "<td>" . $row['alpha2'] ."</td>";
  echo "<td>" . $row['alpha3'] ."</td>";
  echo "<td>" . $row['alpha4'] ."</td>";
  echo "<td>" . $row['alpha5'] ."</td>";
  echo "<td>" . $row['alpha6'] ."</td>";
  echo "</tr>";
  }
echo "</table>";

这里我从我的dayalpha表中显示字母。每个字母都应链接到babyname表中的多个bnames,其中alpha == iname(即name name) 存储在babyname表中。)

    -----------------
    My Babyname Table
    -----------------
    iname    bname    gender    mean

    K        Komal    Female    Tender
    K        Kiran    Male      Ray
    K        Kamlesh  Male      God
    N        Nityesh  Male      Yash

    -----------------
    My dayalpha table 
    -----------------
    dayname   type     alpha  alpha1  alpha2....
    Monday    vyainjan K      G       D
    Wednesday vyainjan T      D       N

如何将dayalpha中的值链接到babyname的多个值?

1 个答案:

答案 0 :(得分:0)

如果按原样保留表,则此SQL可能有效。

SELECT b.*
FROM babyname a
   INNER JOIN dayalpha b ON (a.iname = b.alpha OR a.iname = b.alpha2 OR a.iname = b.alpha3 ...)
WHERE b.dayname = 'Monday'

据我了解你的问题,这是正确的答案。