。我有 五个表 一个是 商品表 订单表 订单详细表 地址表 客户表 当我查询 订单信息的时候 这几个表中都有相互关联的字段。然后取出来 所有的信息。我该怎么写 条件 成了关键问题。
多组合的
多组合的
解决方案 »
- 如何让新插入的时间数据按顺序插入excel
- 如何改变CheckListBox 各项之间的距离。
- 如何让一个panel,无论是缩放窗口还是拉动滚动条,这个panel总是在窗口的相对指定位置?
- 请问如何获取某路径下是否有某文件???
- c#编写的代码在窗体程序和控制应用程序一样吗
- C#调用dll,出现“尝试读取或写入受保护的内存,这通常指示其他内存已损坏".请高手帮忙!
- 关于System.DBNull赋值给整型变量的问题
- 100分求如何用.NET编让WINDOWS软件通过某个HTTP代理上网的软件
- 急问,如何在C#中发送HTML格式邮件(可以将图片直接显示在邮件中)
- SOCKET通信,接收数据分段。
- 有这样的问题:Update 无法找到 TableMapping['Table'] 或 DataTable“Table”。
- ImageList 内存不足 解决方案
a.col1=b.col2 and c.col3=0 or (d.col1=c.col8 or e.col16=88888)
如
Table1 :A11 字段
Table2 :A21 字段
Table3 :A31 字段
Table4 :A41 字段
Table5 :A51 字段
互相相等, 则where Table1.A11=table2.A21
and Table2.A21=table3.A31
and table3.A31=table4.A41
and table4.A41=table5.A51
{
StringBuilder strSql = new StringBuilder();
//现在的OrderDetail.GoodsId = Goods.Id
//查询的订单表字段
strSql.Append("SELECT [Order].OrderId, [Order].CustomerId, [Order].BuyerPayable, [Order].BuyerPostage,[Order].Sum, [Order].OrderState, [Order].OrderCreateTime, [Order].OrderPayTime,[Order].TransportId, [Order].OrderRe, [Order].SignId, [Order].PayCode,[Order].PayType, [Order].BuyerMessage,");
//查询的客户表的字段
strSql.Append("Customer.webName, Customer.NickName,Customer.City,Customer.Mail,");
//查询的客户地址的字段
strSql.Append("Address.PostCode, Address.ReceiverAddress, Address.ActivityAddress.ReceiverPhone,Address.ReceiverName,");
//查询的订单详细表的字段
strSql.Append("OrderDetail.GoodsId, OrderDetail.Num, OrderDetail.Price,OrderDetail.Discount,");
//查询的商品表的字段
strSql.Append("Goods.GoodsName, Goods.ProduceId");
//表之间的对应关系
strSql.Append("FROM [Order] INNER JOIN Customer ON [Order].CustomerId = Customer.CustomerId INNER JOIN Address ON [Order].AddressId = Address.Id INNER JOIN OrderDetail ON [Order].OrderId = OrderDetail.OrderId INNER JOIN Goods ON OrderDetail.GoodsId = Goods.Id");
//传进来的查询条件
if (strWhere != "")
{
strSql.Append(" where " +strWhere);
} return DbHelperSQL.Query(strSql.ToString());
}
这是我的查询的函数
然后 -在有一个函数调用并 给他 where 条件 但是 where 条件是 不固定的 有可能是上面 表的 某个字段 或是多个字段的 组合 。所以我的 调用他的函数怎么写。where 条件怎么写
后面
strSql.Append("where 1=1 ")
传递where 条件的时候
stringBuilder build = new stringBuilder();
build.Append(" And Order.CustomerId=1");
build.Append(" And OrderDetail.OrderId =2");
strWhere = build.ToString();
然后传递 strWhere