|
@@ -19,10 +19,10 @@ const (
|
|
|
FullUserTagSql = `SELECT groupBitmapAndState(bitobj) as userIds from pub_tags.dwd_d_tag ddt WHERE ddt.id=2017`
|
|
|
andSql = `SELECT groupBitmapAndState(bitobj) as userIds from pub_tags.dwd_d_tag ddt WHERE ddt.id in (%s) `
|
|
|
orSql = `SELECT groupBitmapOrState(bitobj) as userIds from pub_tags.dwd_d_tag ddt WHERE ddt.id in (%s) `
|
|
|
- hasAllSql = ` bitmapHasAll( ddut.bitobj,bitmapBuild(%s)) `
|
|
|
- hasAnySql = ` bitmapHasAny( ddut.bitobj,bitmapBuild(%s)) `
|
|
|
- notHasAllSql = ` not bitmapHasAll( ddut.bitobj,bitmapBuild(%s)) `
|
|
|
- notHasAnySql = ` not bitmapHasAny( ddut.bitobj,bitmapBuild(%s)) `
|
|
|
+ hasAllSql = ` bitmapHasAll( ddut.bitobj,bitmapBuild([%s])) `
|
|
|
+ hasAnySql = ` bitmapHasAny( ddut.bitobj,bitmapBuild([%s])) `
|
|
|
+ notHasAllSql = ` not bitmapHasAll( ddut.bitobj,bitmapBuild([%s])) `
|
|
|
+ notHasAnySql = ` not bitmapHasAny( ddut.bitobj,bitmapBuild([%s])) `
|
|
|
countUserSql = `SELECT
|
|
|
COUNT(1) as count
|
|
|
FROM
|
|
@@ -214,14 +214,14 @@ func (u *UserIdConstructor) toCountUserSQL(userId string) string {
|
|
|
if len(groupTag.NormalTag) > 0 { // 正常标签
|
|
|
normalTagList := []string{}
|
|
|
for j := 0; j < len(groupTag.NormalTag); j++ {
|
|
|
- normalTagList = append(normalTagList, fmt.Sprint(groupTag.NormalTag[j]))
|
|
|
+ normalTagList = append(normalTagList, fmt.Sprintf("toUInt64(%v)",groupTag.NormalTag[j]))
|
|
|
}
|
|
|
normalTagSQL = fmt.Sprintf(hasAllSql, strings.Join(normalTagList, ","))
|
|
|
}
|
|
|
if len(groupTag.NotTag) > 0 { // 非标签
|
|
|
notTagList := []string{}
|
|
|
for j := 0; j < len(groupTag.NotTag); j++ {
|
|
|
- notTagList = append(notTagList, fmt.Sprint(groupTag.NotTag[j]))
|
|
|
+ notTagList = append(notTagList, fmt.Sprintf("toUInt64(%v)",groupTag.NotTag[j]))
|
|
|
}
|
|
|
notTagSQL = fmt.Sprintf(notHasAnySql, strings.Join(notTagList, ","))
|
|
|
}
|
|
@@ -240,14 +240,14 @@ func (u *UserIdConstructor) toCountUserSQL(userId string) string {
|
|
|
if len(groupTag.NormalTag) > 0 { // 正常标签
|
|
|
normalTagList := []string{}
|
|
|
for j := 0; j < len(groupTag.NormalTag); j++ {
|
|
|
- normalTagList = append(normalTagList, fmt.Sprint(groupTag.NormalTag[j]))
|
|
|
+ normalTagList = append(normalTagList, fmt.Sprintf("toUInt64(%v)",groupTag.NormalTag[j]))
|
|
|
}
|
|
|
normalTagSQL = fmt.Sprintf(hasAnySql, strings.Join(normalTagList, ","))
|
|
|
}
|
|
|
if len(groupTag.NotTag) > 0 { // 非标签
|
|
|
notTagList := []string{}
|
|
|
for j := 0; j < len(groupTag.NotTag); j++ {
|
|
|
- notTagList = append(notTagList, fmt.Sprint(groupTag.NotTag[j]))
|
|
|
+ notTagList = append(notTagList, fmt.Sprintf("toUInt64(%v)",groupTag.NotTag[j]))
|
|
|
}
|
|
|
notTagSQL = fmt.Sprintf(notHasAllSql, strings.Join(notTagList, ","))
|
|
|
}
|