gpt4 book ai didi

mysql - SQL - 条件连接

转载 作者:行者123 更新时间:2023-11-29 12:21:41 25 4
gpt4 key购买 nike

我正在寻找对一些数据进行 SQL 连接。简而言之,我有一个表(例如 items_tbl),用户可以在其中提交项目供其他用户出价,例如

itemUID, Details, Price, usernameOfSeller

在另一个表(例如 bid_tbl)中,我收集出价

itemUID, usernameOfSeller, usernameofBuyer, offerPrice

我想做的是向买家展示他们尚未出价的每件商品。程序上将是:

SELECT itemUID FROM bid_tbl WHERE usernameofBuyer = 'John'; //All the itemUID's John has bid on

并使用此数据集,从另一个表中选择他未出价的所有项目:

SELECT itemUID FROM items_db WHERE itemUID <> [data from bid_tbl above]

我以前曾做过这种“加入”,但从来没有有条件。谢谢!

基本数据概览

示例项目_tbl

1,Xbox,Sean,100
2,PS4,Mark,300
3,Xbox,Mark_b,500

示例 bid_tbl

/* John has bid on UID 1 and 2 */

1, Sean, John, 100
2, Mark, John, 200

结果集:

/* John has not bid on itemUID 3 */

3

最佳答案

一种方法是使用带有 NOT IN 子句的子查询,以排除出价的项目:

SELECT itemUID FROM items_db 
WHERE itemUID NOT IN
(SELECT itemUID FROM bid_tbl WHERE usernameofBuyer = 'John')

另一种方法是使用LEFT JOIN并过滤掉实际已离开连接的项目:

SELECT i.itemUID 
FROM items_db i LEFT JOIN bid_tbl b ON i.itemUID = b.itemUID AND b.usernameofBuyer = 'John'
WHERE b.itemUID IS NULL

关于mysql - SQL - 条件连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28926402/

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