C#和mysql,表连接

标签 c# mysql sql

现在我正在开发一个使用大量 SQL 数据库的 C# 软件。问题是我对 SQL 不是很熟悉 ...

所以,我有 3 个表

标签 1:

ID| Ingrediente| Cant_disponibila
1 | mere | 250
2 | pere | 14
3 | nuci | 111

标签 2:

ID_Recipe| Denumire
1        |  mere
2        |  pere
3        |  nuci

标签 3:

ID| Recipe_ID |Ingrediente_ID | Cant_necesara
1 | 1 | 7 | 250
2 | 1 | 5 | 14
3 | 2 | 6 | 111
4 | 2 | 1 | 111
5 | 2 | 2 | 111

我需要完成下一个任务:cant_disponibila=cant_disponibila - cant_necesara ......"-"表示减去 :) 所有这些 if denumire="something";

后来编辑:在mysql中查询是这样的:

UPDATE tab1 JOIN tab3 ON (ID = Ingrediente_ID) JOIN tab2 ON (ID_Recipe = Recipe_ID) SET Cant_disponibila = Cant_disponibila - Cant_necesara WHERE Denumire = "...";

问题是在我的 C# 软件中出现错误,提示“关键字连接附近的语法不正确”

最佳答案

根据您的语法错误消息,我认为您使用的是 SQL Server 而不是 MySQL,这是一个 UPDATE 语句,其中包含 join for SQL Server

UPDATE  a
SET     a.Cant_disponibila = a.Cant_disponibila - c.Cant_necesara 
FROM    tab1 a
        INNER JOIN tab3 c
            ON a.ID = c.Ingrediente_ID
        INNER JOIN tab2 b
            ON b.ID_Recipe = c.Recipe_ID 
WHERE   b.Denumire = ''

关于C#和mysql,表连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17700397/

相关文章:

c# - 无法从 sitecore 找到定位框架/模态对话框并在其中执行操作

mysql - 从其他表更新数据库平均值中的字段

mysql - SQL 根据时间戳按年月排序

sql - 在 SQL 或 Django ORM 中,订购一对多的常规方法是什么?

sql - 我应该使用角色还是架构来根据用户的部门授予用户访问权限?

c# - 消失的系统托盘图标

c# - 如何将 SqlException 消息操作为用户友好的消息

c# - 当只有一种资源(例如 Kinect 传感器)时,使用静态类/方法是一种好的做法吗

php - 脚本生成多个描述而不是一个

php - PHP帮助内部连接问题mysqli