我正在尝试在我的表customer_id
上获取此tbl_customers
,当我获得该ID时,我也想在第二张表customer_id
上获取tbl_stocks
的值这样我就可以绑定tbl_customers
拥有的数据。
第一-这是我的表tbl_customers
的结构,请看一下。
您可以看到我想要的是cutomer_id
上tbl_customers
的数量。那个 ID已绑定,并且会获取所有相同的ID和值tbl_stocks
中的行也是customer_id
,因此对于这种类型的查询,我如何使sql查询语句出现此问题?到目前为止,我有这个sql语句,但是它没有获取数据。
//PSEUDO CODE ONLY IM NOT FAMILIAR WITH THE SYNTAX OF THIS PROBLEM
$sql = SELECT `tbl_customers` FROM `customer_id` = 1 AND SELECT `tbl_stocks` FROM `customer_id` = 1;
,所以如果它能正常工作,我将获取的最终 OUTPUT 就是这样
P.S-我不需要在文本框或任何形式的输入上显示它,我只需要使用sql查询就可以获取它,这样我就知道该程序正在获取表的值,谢谢!
答案 0 :(得分:0)
您应该使用joins
这是您可以尝试的查询。
select c.*, s.*
from tbl_customers c
join tbl_stocks s on s.customer_id = c.customer_id
and c.customer_id = 1
此外,您应该阅读更多有关 https://dev.mysql.com/doc/refman/8.0/en/join.html
在这里,我将更新在php页面中打印值的答案
$dbConn = mysqli_connect('localhost', 'username', 'password', 'databaseName');
if(!$dbConn){
echo "DB Not connected !";
}
$query = "select c.*, s.* from tbl_customers c join tbl_stocks s on s.customer_id = c.customer_id and c.customer_id = 1";
$result= $dbConn->query($query);
while($row = $result->fetch_object()){
echo $row->customer_id;
echo $row->color;
// here you may add more columns to print
}
答案 1 :(得分:0)
您实际上不需要查询两个表。由于在库存表中可以找到客户ID,因此您只需要:
SELECT
s.customer_id,
s.id,
s.item,
s.color
FROM tbl_stocks as s
WHERE s.customer_id = ?
如果要查询两个表,例如以检索其他一些客户信息,请使用JOIN:
SELECT
c.customer_id,
s.id,
s.item,
s.color
FROM
tbl_customers as c
INNER JOIN tbl_stocks as s on s.customer_id = c.customer_id
WHERE c.customer_id = ?
答案 2 :(得分:0)
了解有关SQL JOINS的信息:
contains