数据库查询语句求指导

图片说明

如上图所示,我点查询的时候select语句应该怎么组织,给个思路,小虾米求助,望各位大侠不吝赐教,谢谢。

表结构是啥?没有结构只能猜一下了
select * from 你的这些数据所在表名 where 第一行查询条件

你这问题提的不好,这些数据如何提交?
目前看来有几种情况:
1、发货方,收货方 应该是 可选填的 ; select * from TABLE where 单据类型=? and 发货方=? and 备注=? and 收货方=?
2、单据编号应该是唯一查询。select * from TABLE where 单据号=?
3、日期 应该是范围查询 select * from TABLE where 开始日期 > 单据日期 and 结束日期< 单据日期;
只能帮你这么多了。

不考虑性能问题,一个sql文就可以解决。
先把所以检索条件都用上的sql文写好。
然后根据你的持久层技术,根据检索条件有无判断这个字段是否作为检索条件。
(比如,mybatis就可以做到)

select
你需要的字段
from
你要查询的表A,你要查询的表B,你要查询的表C,...
where
你要查询的表之间的关联

<开始,判断单据类型是否作为检索条件,如果是,执行。如果不是,不执行。>
and 单据类型 = ?
<结束>

<开始,判断发货方是否作为检索条件,如果是,执行。如果不是,不执行。>
and 发货方=?
<结束>

。。。