我的理解是hive默认对于varchar的类型列做了一个trim的操作


我在这个表里加了一条数据  11,4362,2012-01-01, ABIN,175750,0,12,10000096,218.14,668,
TEST129
SELECT count(*) from test_kylin_fact
 where lstg_format_name = ' ABIN'     查询数据结果为0,

加了一条数据加了一条数据  11,4362,2012-01-01,a ABIN,175750,0,12,10000096,218.14,668,
TEST129
SELECT count(*) from test_kylin_fact
 where lstg_format_name = 'a ABIN'     查询数据结果为1,

所以我的猜想是它默认做了一个trim的操作,我需要做一个验证。
目前,你可以使用trim绕过这个问题,它应该不会影响你的结果

On Thu, Jan 31, 2019 at 9:40 AM 廉立伟 <lianli...@huobi.com> wrote:

> 你的意思是数据在hive中前后有空格?   我刚才在hive中select了一下  不加trim也可以查出来
>
> 获取 Outlook for iOS<https://aka.ms/o0ukef>
>
> ________________________________
> 收件人: penphi than <dethr...@gmail.com>
> 发送时间: 星期四, 一月 31, 2019 09:33
> 收件人: dev@kylin.apache.org
> 主题: Re: 查询无结果
>
> 很明显,这是数据问题,不是你的SQL问题啊。
> 如果你想实现彻底解决一遍,要么你在SQL查询的时候处理一下,
> 要么你就得把数据库中的数据这个字段处理一遍啊。
>
> 这个都不能说是脏数据,可能就是数据入库的时候,当时没有注意这个问题,
> 可以找DBA或者数据处理人员处理一下。后续的数据进去的时候做一个触发器检查。
>
> 不过你这种情况,建议把trim加上。
>
> On Thu, Jan 31, 2019 at 9:14 AM 廉立伟 <lianli...@huobi.com> wrote:
>
> > 你好 加trim就可以了 如果不加trim的话 我怎么办 问题是出哪了
> >
> > 获取 Outlook for iOS<https://aka.ms/o0ukef>
> >
> > ________________________________
> > 收件人: penphi than <dethr...@gmail.com>
> > 发送时间: 星期四, 一月 31, 2019 09:00
> > 收件人: dev@kylin.apache.org
> > 主题: Re: 查询无结果
> >
> > trim(HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY.EXCHANGE_NAME)
> >
> > 这个函数应该可以解决你的问题!
> >
> > 获取 Outlook for Android<https://aka.ms/ghei36>
> >
> > ________________________________
> > From: 廉立伟 <lianli...@huobi.com>
> > Sent: Thursday, January 31, 2019 8:47:02 AM
> > To: dev@kylin.apache.org; dev@kylin.apache.org
> > Subject: Re: 查询无结果
> >
> > 使用like可以查出结果来 但是使用=,结果为0 怎么确保数据前后没有空白字符
> >
> > 获取 Outlook for iOS<https://aka.ms/o0ukef>
> >
> > ________________________________
> > 收件人: penphi than <dethr...@gmail.com>
> > 发送时间: 星期四, 一月 31, 2019 01:01
> > 收件人: dev@kylin.apache.org
> > 主题: Re: 查询无结果
> >
> > 可以试一试 like `%b11%` 确保你的数据b11
> >
> > 前后没有空白字符
> >
> > 获取 Outlook for Android<https://aka.ms/ghei36>
> >
> > ________________________________
> > From: Billy Liu <billy...@apache.org>
> > Sent: Wednesday, January 30, 2019 8:56:38 PM
> > To: dev
> > Subject: Re: 查询无结果
> >
> > select
> > EXCHANGE_NAME, count(*)
> > from HUOBI_GLOBAL.HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY
> > where HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY.EXCHANGE_NAME = 'b11'
> > group by EXCHANGE_NAME
> >
> > With Warm regards
> >
> > Billy Liu
> >
> > Yifei Wu <vafuler...@gmail.com> 于2019年1月30日周三 下午3:10写道:
> > >
> > > Hi, liwei,
> > > It sounds like a Kylin Query bug, could you open a jira to describe
> this
> > question and how to reproduce this question in detail, for it be very
> > helpful for
> > > Locating the root cause.
> > >
> > > BR
> > > Yifei Wu
> > >
> > >
> > > 在 2019/1/30 下午2:49,“廉立伟”<lianli...@huobi.com> 写入:
> > >
> > > select
> > >
> > > count(*),EXCHANGE_NAME
> > >
> > > from HUOBI_GLOBAL.HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY
> > >
> > > group by EXCHANGE_NAME
> > >
> > > order by EXCHANGE_NAME
> > > 这样的话有结果 有b11 但是where的时候就没有
> > >
> > > 获取 Outlook for iOS<https://aka.ms/o0ukef>
> > >
> > > ________________________________
> > > 收件人: Li Feng <li.f...@kyligence.io>
> > > 发送时间: 星期三, 一月 30, 2019 13:15
> > > 收件人: dev@kylin.apache.org
> > > 主题: Re: 查询无结果
> > >
> > > Hi Liwei
> > > Try
> > > select
> > > count(*),EXCHANGE_NAME
> > > from HUOBI_GLOBAL.HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY
> > > group by EXCHANGE_NAME
> > > order by EXCHANGE_NAME
> > > and check whether there exists 'b11' value.
> > > BR,
> > > Lee
> > > 在 19/1/30 下午1:08,“廉立伟”<lianli...@huobi.com> 写入:
> > >
> > > 怎么没结果 你们解决下呀
> > >
> > > 获取 Outlook for iOS<https://aka.ms/o0ukef>
> > >
> > > ________________________________
> > > 收件人: 廉立伟 <lianli...@huobi.com>
> > > 发送时间: 星期三, 一月 30, 2019 10:23
> > > 收件人: dev@kylin.apache.org
> > > 主题: Re: 查询无结果
> > >
> > > 这样查询结果为0,但是我的数据中确实有EXCHANGE_NAME = 'b11',怎么查不出来呢
> > > select
> > > count(*)
> > > from HUOBI_GLOBAL.HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY
> > > where HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY.EXCHANGE_NAME = 'b11'
> > >
> > >
> > > 在 2019/1/30 上午10:21,“JiaTao Tao”<taojia...@gmail.com> 写入:
> > >
> > > select
> > > count(*)
> > > from HUOBI_GLOBAL.HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY
> > > where HUOBI_YUNYING_DW_KYLIN_USER_INDEX_DAILY.EXCHANGE_NAME = 'b11'
> > >
> > >
> > >
> > >
> > >
> > >
> >
>

Reply via email to