如何在一个数据库中从多个表里查询关键字,并将结果绑定到datalist中?

来源:百度知道 编辑:UC知道 时间:2024/05/25 03:30:50
请问大侠,如何在一个数据库中对多个表进行关键字查询(表的结构都不一样),并将查询的结果绑定到datalist控件中!显示的结果类似百度的搜索结果!请求给出较为详细的代码!
我是想把多个表单查询结果统一一下,然后再绑定到datalist里面,以列表的形式分页显示,表的结构不一样,用union 连接报错说结构不一致,不知道怎么解决,希望大侠能给个方法!

就是用union就行了
比如你要的结果是
id name content
字段类型都是varchar,长度你自己定,我就说一下示意
然后有两个表,A(y,z) B(a,b,c)
假设A中的y对应name,z对应content
B中a对应id,b对应name,c对应content
那么
select '' as id,y as name,z as content from A
union all
select a as id,b as name,c as content from B
如果还有字段类型不一致的问题,可以用cast转换一下
比如
select '' as id,cast(y as varchar) as name,z as content from A

总之,要保证相互union的多个select语句的结果中字段数,类型,顺序完全一致.

问题太笼统了

用union是同样的字段,同样的类型才可以的
我的见意是,你在两个或多个表中设一个链接的字段
比如table 1 ID1 table 2 ID2
ID1里的值要与ID2相同
这样的话才可以进行查询
例如: select * from 主表 inner join 次表 on 主表ID=次表中主表的ID
这是两个表的查询
多表的话
可以select 要查询的字段 from 表
where table1.ID1=table.ID2 and table3.ID3=table4.ID4
等可以按照这样的方法去试试!

用数据源控件,查询生成器可以帮你生成查询语句,你只要选择表和字段

联表查询的性能消耗比较大,在数据量大的时候使用不合适
Union是对结果集的并运算,要求各结果集中对象(一条数据)结构相同。更不可能修改对象的结构。
你可以尝试使用子查询。

多表查询写个视图最方便了,很简单