记录ID 客户编号 收银时间 销售金额 销售类型
00023351 010006 2009-09-27 20:10 58.00 特价
00023372 030031 2009-09-27 21:33 69.00 特价
00023447 040102 2009-09-28 21:12 69.00 特价
00023448 020173 2009-09-28 21:12 69.00 特价
00023449 040017 2009-09-28 21:13 69.00 特价
00023464 030132 2009-09-28 21:37 81.00 正常
00023465 020145 2009-09-28 21:40 60.00 正常
00023466 030087 2009-09-28 21:45 72.00 正常
00023467 020102 2009-09-28 21:46 51.00 正常
00023469 040051 2009-09-28 21:51 60.00 正常
00023472 010299 2009-09-28 22:00 60.00 正常
00023496 010128 2009-09-29 19:11 72.00 特价
00023499 040239 2009-09-29 19:16 51.00 特价
00023500 030108 2009-09-29 19:16 60.00 特价
00023501 030089 2009-09-29 19:16 72.00 特价
00023502 030068 2009-09-29 19:16 81.00 特价
00023503 020013 2009-09-29 19:16 60.00 特价
00023504 010247 2009-09-29 19:16 162.00 特价
00023505 020255 2009-09-29 19:16 51.00 特价
00023506 020132 2009-09-29 19:16 60.00 特价
00023507 010229 2009-09-29 19:16 81.00 特价
00023518 020179 2009-09-29 20:03 81.00 特价
00023521 020183 2009-09-29 20:42 81.00 特价
00023526 010149 2009-09-29 20:58 77.00 特价
00023607 010078 2009-09-30 19:46 81.00 特价
00023608 020051 2009-09-30 19:46 77.00 特价
00023609 010158 2009-09-30 19:46 60.00 特价
00023610 040107 2009-09-30 19:46 81.00 特价
00023611 010044 2009-09-30 19:46 180.00 特价select * from rfm2 where customer=10006,这样查找customer=10006可以得出结果,为什么select * from rfm2 where type=特价得到的结果就为空呢,我想把type=特价的筛选出来,怎么能解决呢

解决方案 »

  1.   

    贴一下你的建表SQL
      

  2.   

    drop table if exists rfm2;
    create table rfm2
    (
         id  varchar(20),
        customer int(10),
        date datetime(6),
        money  NUMERIC(8),
        type   varchar(20)
    );
      

  3.   

     varchar(20)
      

  4.   

    主要是看你的字符编码。 
    你这个不是mysql产生的, 你在navicat或workbench右键导出结构看下
      

  5.   

    主要是看你的字符编码。 
    你这个不是mysql产生的, 你在navicat或workbench右键导出结构看下-- Table structure for `rfm2`
    -- ----------------------------
    DROP TABLE IF EXISTS `rfm2`;
    CREATE TABLE `rfm2` (
    `id`  varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
    `customer`  int(10) NULL DEFAULT NULL ,
    `date`  datetime(6) NULL DEFAULT NULL ,
    `money`  decimal(8,0) NULL DEFAULT NULL ,
    `type`  varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL 
    )
    ENGINE=InnoDB
    DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
    ;     MS-SQL打开长这样
      

  6.   

    用 type LIKE '%特价%' 试下 如果有结果说明 字段前后有不可识别字符
      

  7.   

    select * from rfm2 where type='%特价%',这样也是空
      

  8.   

       按下贴中的方法检查字符集设置。并贴出以供分析。
       
       http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  9.   

    用其他条件找到要查询的记录,使用 select hex(type) 看下对应的编码到底是什么