如何决定使用外部条件显示查询结果

时间:2013-11-18 14:42:39

标签: c# mysql

我的查询效果很好

SELECT tb.id, tb.nom, tb.proddate, tb.qty, tb.stockrecno, 
SUM(IF((status>0 AND tb.id=sd.prodid),quantite,0)) AS rq FROM " + TableName + " AS tb 
JOIN StockData AS sd  ON (tb.id = sd.prodid AND sd.matcuisine = 3) 
GROUP BY tb.id, tb.nom, tb.proddate, tb.qty, tb.stockrecno ORDER BY proddate DESC LIMIT 25 OFFSET @Myid"

我在我的程序ShowZero中添加了一个变量,用于显示tb.qty-rq的结果是否为零。 ShowZero = true显示即使tb.qty-rq = 0的结果,如果ShowZero = false仅显示tb.qty-rq> 0

我补充说:

cmd.Parameters.Add("@ShowZ", MySqlDbType.Int16).Value = ShowZero; 

我在查询结尾添加了WHERE((@ShowZ)OR(!@ShowZ AND tb.qty - SUM(IF((status> 0 AND tb.id = sd.prodid),quantite,0) )> 0))//这里不接受别名rq我不知道为什么?

但这会产生错误。

有没有办法在此查询中执行此操作?

PS:OFFSET @Myid是一个让我控制上次读取记录的索引。

我使用.NET 3.5和XAMPP v.3.2.1 c#2008 express

0 个答案:

没有答案