douying1119 2011-04-05 21:55
浏览 26
已采纳

用于ExtJS网格的MySQL UNION ALL - 需要唯一的id列

I am using an ExtJS 3.0 grid and generate data from PHP using MySQL. I have setup my idProperty of the grid on the id column. The problem is that I have 2 tables for incoming invoices and one for outgoing invoices with same columns. I want to make a UNION ALL on these 2 tables and show the result into the ExtJS grid. The problem is that there are some duplicate id's coming out from these tables that causes the ExtJS grid to skip them rows. I know I can do simple UNION to skip duplicates but I need every row in the grid, even if they have the same id. There are actually no distinct data that I can relate to.

Any ideas ? Thanks.

  • 写回答

2条回答 默认 最新

  • douyi3632 2011-04-06 15:32
    关注

    Why not add some prefix to the id-column when SELECTing the data:

    (SELECT CONCAT('in-', id) AS id, ... FROM in_table)
    UNION ALL
    (SELECT CONCAT('out-', id) AS id, ... FROM out_table)
    

    You'll have to make sure that the field-definition for the id-field in your reader configuration has the correct type (auto or string in this case).

    If you need the real id afterwards, change the query to select the real id as well:

    (SELECT CONCAT('in-', id) AS gid, id, 'in' AS type ... FROM in_table)
    UNION ALL
    (SELECT CONCAT('out-', id) AS gid, id, 'out' AS type, ... FROM out_table)
    

    Your idProperty will be gid now.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面
  • ¥50 NT4.0系统 STOP:0X0000007B