1

我的应用程序中有一个 BDS 2006 的 DBGrid 组件。网格快照如下。

在此处输入图像描述

DBGrid 组件连接到 MySQL 数据库,该数据库在运行时被填充。我使用的查询是:

dm.MyQpayment.SQL.Clear;
dm.MyQpayment.SQL.Add('select sdate,stime,pcid,billno,c.customer_name,s.customerid,s.total,s.amount_paid,s.balance');
dm.MyQpayment.SQL.Add(',s.payment_type,s.payment_status,s.delivery from sales_order s left join customer_details c on s.customerid=c.customerid where s.payment_status=''complete'' and s.sdate>="'+startdate+'" and s.sdate<="'+enddate+'" ');
dm.MyQpayment.Active :=true;

我想显示BILL NOMachine idasBILL NO并且值应该是 2_1,如果Machine id是 2 并且BILL NO是 1。知道该怎么做吗?

编辑1

select CAST(pcid AS CHAR) + "_" + CAST(billno AS CHAR) AS MachineAndBillNo
FROM tt.payment_details ;

这个查询给我的结果如下

在此处输入图像描述

它给出 machineandbillno=billno+pcid

4

1 回答 1

1

我不知道具体的 MySQL 语法要求,但您必须将这两个字段连接在一起:

SELECT 
  sdate, 
  stime, 
  CONCAT(CAST(pcid AS CHAR), '_', CAST(billno AS CHAR)) AS MachineAndBillNo,
  c.customer_name,
  ...
于 2012-03-24T12:09:32.370 回答