跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 新手求助
  4. odoo视图group by

odoo视图group by

已定时 已固定 已锁定 已移动 Odoo 新手求助
7 帖子 3 发布者 2.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • H 离线
    H 离线
    hui
    写于 最后由 编辑
    #1

    前提:字段E/F/Cs-Kit是Selection类型的,值分别为E,F,CS-Kit三个。

    问题:在视图上group by字段E/F/Cs-Kit,结果如图,按理最多四个分组的,第一个空白的520条数据跟最后空白组的13条数据,有什么区别,什么导致的?数据有什么问题吗?
    0_1513820936491_2017-12-21 09-48-21屏幕截图.png

    1 条回复 最后回复
    0
    • ieitzybI 离线
      ieitzybI 离线
      ieitzyb
      写于 最后由 编辑
      #2

      中文的话,也有个“未定义”显示,英文下显示空白,还真是没见过。

      http://www.OuduPLM.com/ 苏州欧度软件,专注服装行业(鳴謝:37signals,Trello,ProcessON,重庆慧积,上海开阖)

      H 1 条回复 最后回复
      0
      • H 离线
        H 离线
        hui
        在 回复了 ieitzyb 最后由 编辑
        #3

        @ieitzyb
        会跟数据有关吗,数据是脚本批量导入的。selection本身有个空白的数据,导入时把没值的导入成空字符串了。

        digitalsatoriD 1 条回复 最后回复
        0
        • digitalsatoriD 离线
          digitalsatoriD 离线
          digitalsatori 管理员
          在 回复了 hui 最后由 编辑
          #4

          @1234567 在 odoo视图group by 中说:

          @ieitzyb
          会跟数据有关吗,数据是脚本批量导入的。selection本身有个空白的数据,导入时把没值的导入成空字符串了。

          肯定是跟导入的数据有关的。selection字段导入估计其值是不做验证的,给什么值就存什么?

          你可以用SQL查询确认:

          SELECT selection_field FROM Parts_table GROUP BY selection_field;
          

          【上海先安科技】(tony AT openerp.cn)

          H 1 条回复 最后回复
          0
          • H 离线
            H 离线
            hui
            在 回复了 digitalsatori 最后由 编辑
            #5

            @digitalsatori

            使用sql语句查询出来的结果如下:这个怎么能区分下,看出都是空的数据的区别?
            0_1515119164154_6006922d-57bd-485b-8751-23f15519b397-图片.png

            1 条回复 最后回复
            0
            • digitalsatoriD 离线
              digitalsatoriD 离线
              digitalsatori 管理员
              写于 最后由 编辑
              #6

              不用区分都能猜的出,一部分是Null, 一部分是空字符串“”。

              如果用psql命令行,可以用\pset null *null*将null值显示为*null*。你用的应该是pgadmin应该也有对应设置,或者在select语句中判断'is null'的值就可以了。

              其实你应该只需要把所有空字符串的值转成Null值就可以了,这个应该自己会弄的吧。

              【上海先安科技】(tony AT openerp.cn)

              H 1 条回复 最后回复
              0
              • H 离线
                H 离线
                hui
                在 回复了 digitalsatori 最后由 编辑
                #7

                @digitalsatori
                首先:我确保在同一数据库中进行操作,数据差异对比如下:
                在视图中进行group by后跟数据库用count计算出来的对比:
                sql:select e_f_cskit,count(e_f_cskit) from product_template group by e_f_cskit ;
                0_1515140778357_5cd570fa-ba72-45a9-b7ea-add7c7c316f0-图片.png
                数据库中sql命令查询为空字符串的数量:
                0_1515140856662_''.png
                数据库中sql命令查询为Null的数量:
                0_1515140866133_null.png

                是我sql错啦,还是什么原因?

                1 条回复 最后回复
                0

                • 登录

                • 没有帐号? 注册

                • 登录或注册以进行搜索。
                • 第一个帖子
                  最后一个帖子
                0
                • 版块
                • 标签
                • 热门
                • 用户
                • 群组