1

アプリケーションにBDS2006の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;

表示したいので、値は2_1で、2で1の場合、値は2_1である必要がBILL NOあります。これを行う方法はありますか?Machine idBILL NOMachine idBILL NO

編集1

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

このクエリは次のような結果をもたらします

ここに画像の説明を入力してください

ここでmachineandbillno=billno+pcidが得られます

4

1 に答える 1

1

特定の MySQL 構文要件はわかりませんが、これら 2 つのフィールドを連結する必要があります。

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