重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
试试这个select * from user u,product p where u.id=3 and u.id=p.userid
创新互联公司是一家集网站建设,长顺企业网站建设,长顺品牌网站建设,网站定制,长顺网站建设报价,网络营销,网络优化,长顺网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
这句话的意思是先把user和product连接,用product和user关联的那个字段,然后再加上id等于3就完事了
select 前台用户选择的列(别名.XX1,别名.XX2,别名.XX3...)
from 前台用户选择要查询的表(T1) 别名 [,T2,T3]
[
连接关系(内连,左连)(inner join, left join) 表(T2) on
连接条件(表1别名.列名=表2别名.列名)
]
where 1=1 and [查询条件(表1别名.列名=xxx,...)]
[order by 表1别名.列名]
PS:方括号的内容为可选
补充回答:
怎么会不知道用户选了什么列呢?比如图中选了证书号,证书类型,签证机构,它选中肯定会对应一个值的,把这个值设成列名不就可以直接拼接了吗
一般多个条件的时候,处理方式是 select * from table where 1 = 1先写上这样一个条件,这样你以后的条件就可以直接用 if判断了,比如现在有A ,B 两个条件 就可以直接这样
String sql = "select * from table where 1 = 1";
if( 条件A != null ){
sql += " and A =" + 条件A;
}
if( 条件B != null ){
sql += " and B =" + 条件B;
}
这样就可以避免多种情况存在的问题