mysql - 3 个表的 SQL 查询或连接

标签 mysql sql database stored-procedures

我有表:

User Table
User_id| Preferences |Blood_Group|City

Events Table
Event_id|Event_type|Blood_Group|Event_city|Event_Addded_By|Description

Commit Table
User_id|Event_id

我将发送 user_id,以便我希望查询返回那些事件,这些事件是用户和 blood_group 中首选的事件,事件表中的城市与用户表中的值相同,并且该事件尚未提交提交表中的用户。

提前致谢。

最佳答案

这可能对您有帮助:

SELECT [Required Columns] 
FROM [User Table] UT JOIN [Event Table] ET 
ON ET.Bloodgroup = UT.Bloodgroup 
AND ET.City = UT.City 
WHERE NOT EXISTS (
   SELECT 1 FROM [Commit Table] CT 
   WHERE CT.UserId = UT.UserId 
   AND ET.EventId = CT.EventId
)
AND UT.UserId = @UserId

关于mysql - 3 个表的 SQL 查询或连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31803253/

相关文章:

mysql - 显示小于或等于 15 分钟前时间戳的 MysQl 行

php - SQL 包含带有 AND/OR/BOTH 的记录

java se 与 hibernate 和 JavaDB。我如何部署应用程序?

php - Laravel 模型默认值相对时间 now() + 24h

php - 如何使用php函数unlink从服务器删除图像?

mysql - 如何在确定的日期从我的数据库中获取数字结果

mysql - 将一个表的外键约束复制到mysql同一数据库中的另一个表

php - 外键可以为空或留空吗?

sql-server - 如何将 postgresql 转储恢复到 SQL Server 实例?

数组顺序的MySql?