gpt4 book ai didi

php - 当我有 2 个同名列时,如何识别 mysql 中的列

转载 作者:行者123 更新时间:2023-11-29 07:48:22 26 4
gpt4 key购买 nike

我正在使用此 PHP 代码来获取连接 2 个表的 sql 查询...两个表具有相同的“大小”字段,但两个表的结果不同...代码:

mysql_query("SELECT * FROM cart INNER JOIN tbl_product ON tbl_product.product_id =
cart.product_id WHERE .......) or die(mysql_error());

此查询的结果向我展示了

Cart_id、member_id、product_id、尺寸、...以及第二个尺寸

尺寸的 1 个来自购物车表,1 个来自产品表。

然后我尝试检索我的数据

while($data2 = mysql_fetch_array( $data))
{
$size= $data2['size'];

但是我在结果中得到了第二个尺寸,而我需要第一个尺寸..我需要 cart.size ...我该怎么做?

最佳答案

在 SELECT 语句中明确命名列,并将别名分配给具有相同名称的列:

SELECT cart.id_col, cart.size AS CartSize, ttbl_product.size AS ProductSize 
FROM cart INNER JOIN tbl_product ON tbl_product.product_id = cart.product_id
WHERE .......

然后从结果中提取 ProductSize 的值。

如果您不需要购物车尺寸,则可以从返回的列列表中删除它并省略别名,因为结果中只有一个“尺寸”列:

SELECT cart.id_col, ttbl_product.size  
FROM cart INNER JOIN tbl_product ON tbl_product.product_id = cart.product_id
WHERE .......

一般来说,最好在 SELECT 语句中显式命名所需的列,因为这样可以更清楚地显示您要返回的内容,如果您尝试获取不存在的列(当SELECT 执行,而不是当您尝试从结果集中检索列值时执行),如果您只对可用列的一小部分子集感兴趣,则可以带来更好的性能。

关于php - 当我有 2 个同名列时,如何识别 mysql 中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27138824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com