[英]Select * from table_name where column_nameِ = 'value'
我有一個表(表 A),有 6 列(天,les1,les2,les3,les4,les5)
+-----------------------------------------------------+
| days | les1 | les2 | les3 | les4 | les5 |
-------------------------------------------------------
| sat | 2 | 5 | 9 | 10 | 30 |
| mon | 50 | 2 | 2 | 4 | 5 |
| Fri | 6 | 1 | 2 | 8 | 4 |
| wed | 8 | 0 | 3 | 6 | 3 |
-------------------------------------------------------
在另一個表(表 B)中,我有 3 列(id、TName、LName)
___________________________
| id | TName | LName |
----------------------------
| 1 | M.N | les1 |
| 2 | T.G | les5 |
| 3 | Z.GH | les2 |
| 4 | J.H | les4 |
----------------------------
我需要使用 php 中的代碼從表 A 中找到一些值,類似於以下代碼:
$les = mysql_query("SELECT * FROM `table_B` WHERE `id` = '3' ");
$les_f = mysql_fetch_array($les);
$lesson = $les_f['LName']; //so the $lesson value = 'les2'
$list = mysql_query("SELECT * FROM `table_A` WHERE $lesson = '0' ");
$showresult = mysql_fetch_array($list);
$result = $showresult['days']; // it should show me 'wed' from tableA in days column
請幫助編寫此代碼...
我建議改進你的數據庫設計。 將表 A 的列減少到day, number, les
和表 B 到id, TName, LId
表 A 應如下所示:
+---------------------------+
| day | number | les |
----------------------------
| sat | 2 | 1 |
| sat | 5 | 2 |
| sat | 9 | 3 |
| sat | 10 | 4 |
| sat | 30 | 5 |
| | | |
| mon | 50 | 1 |
| mon | 2 | 2 |
| mon | 2 | 3 |
| mon | 8 | 4 |
| mon | 5 | 5 |
| ... | ... | ... |
----------------------------
表 B 應如下所示:
| id | TName | LId |
----------------------------
| 1 | M.N | 1 |
| 2 | T.G | 5 |
| 3 | Z.GH | 2 |
| 4 | J.H | 4 |
----------------------------
然后,您可以使用單個 SQL 查詢獲取數據:
SELECT * FROM table_b b
JOIN table_a a
ON b.les = a.LId
WHERE a.number = 0
$les = mysql_query("SELECT * FROM `table_B` WHERE `id` = '3' ");
$les_f = mysql_fetch_array($les);
$lesson = $les_f['LName']; //so the $lesson value = 'les2'
$list = mysql_query("SELECT * FROM `table_A` WHERE $lesson = '0' ");
$showresult = mysql_fetch_array($list);
$result = $showresult['days'];
改變 :
$list = mysql_query("SELECT * FROM `table_A` WHERE $lesson = '0' ");
到 :
$list = mysql_query("SELECT * FROM `table_A` WHERE `".$lesson."` = '0' ");
這個問題是解決方案嗎
嘗試下面的代碼獲取結果
$les = mysql_query("SELECT * FROM `table_B` WHERE `id` = '3' ");
while($row = mysql_fetch_assoc($les)) {
$lesson = $row['LName']; //so the $lesson value = 'les2'
$list = mysql_query("SELECT * FROM `table_A` WHERE $lesson = '0' ");
while($showresult = mysql_fetch_assoc($list)) {
echo $result = $showresult['days']; // it should show me 'wed' from tableA in days column
}
}
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.