gpt4 book ai didi

mysql - 从两个不同表中的相同命名字段获取数据

转载 作者:行者123 更新时间:2023-11-29 04:39:15 24 4
gpt4 key购买 nike

我在从 2 个不同的表中选择数据时遇到问题。Table1 和 Table2 都有 'ID' 和 'Categories' 字段

我正在尝试获取“类别”= 100001 的所有“ID”

我可以从表 1 中这样做:

$ids = @mysql_values('SELECT ID FROM Table1 WHERE Live = 1 AND Categories = 100001 ORDER BY Rand() LIMIT 20');

这有效。

但是当我尝试使用我有限的知识进行连接时,它不起作用。这是我的连接查询,它不起作用,但我不明白为什么:

$ids = @mysql_values('SELECT Table1.ID, Table2.ID FROM Table1, Table2 WHERE Live = 1 AND Categories = 100001 ORDER BY Rand() LIMIT 20');

感谢任何帮助。我看过其他示例并尝试过它们但无济于事。

干杯

最佳答案

这等同于CROSS JOIN:

SELECT Table1.ID, Table2.ID 
FROM Table1, Table2
WHERE Live = 1
AND Categories = 100001
ORDER BY Rand()
LIMIT 20

您可能想要JOIN 表:

SELECT *
FROM Table1 t1
JOIN Table2 t2
ON t1.<pk> = t2.<fk> -- you need to join both tables
WHERE Live = 1 -- add t1.Live/t2.Live dependent on table
AND Categories = 100001 -- same as above
ORDER BY Rand()
LIMIT 20

关于mysql - 从两个不同表中的相同命名字段获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33335253/

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