1,select distinct name from table_1 //主表 2.select * from table_1 where name=:name //副表 按照name 分组,对显示name的qrdbtext控件,在所在的band中的endprint事件下加: qrdbtext.enable:=false 在分组的band的beginpring事件下加 qrdbtext.enable:=true
不好意思,我以为你是要打印的效果, 如果是显示在dbgrid中, select * from table_1 order by name 但是同名的几条,都有name值,我想DBGRId不可以合并吧,vb中有一个空间还是可以地
1.sql: select * from tablename group by name,project,price 2.dephi: var str:string; str:=''; dagrid.datasource.dataset.first;
with dbgrid.datasource.dataset do while not eof do begin if fieldvalues['name'] = str then str:='' else fieldvalues['name']<> str then str:=fieldvalues['name'] ; fieldvalues['name'] :=str; Next; end;
语文 80
赵 数学 60
语文 80
这个是没办法一次得到的。
可以先得到一个name,用distinct。
然后用dataset.next一个一个找出科目。
——————————————
李 | 数学 | 90 |
——————————————
| 语文 | 80 |
——————————————
赵 | 数学 | 60 |
——————————————
| 语文 | 80 |
——————————————
请给出具体的代码,不胜感激,急须
2.select * from table_1 where name=:name //副表
按照name 分组,对显示name的qrdbtext控件,在所在的band中的endprint事件下加:
qrdbtext.enable:=false
在分组的band的beginpring事件下加 qrdbtext.enable:=true
如果是显示在dbgrid中,
select * from table_1 order by name
但是同名的几条,都有name值,我想DBGRId不可以合并吧,vb中有一个空间还是可以地
select * from tablename
group by name,project,price
2.dephi:
var
str:string; str:='';
dagrid.datasource.dataset.first;
with dbgrid.datasource.dataset do
while not eof do
begin
if fieldvalues['name'] = str then
str:=''
else fieldvalues['name']<> str then
str:=fieldvalues['name'] ;
fieldvalues['name'] :=str;
Next;
end;