我正在运行以下查询并不断收到错误消息:
SELECT NTH(2,split(Web_Address_,'.')) +'.'+NTH(3,split(Web_Address_,'.')) as D , Web_Address_
FROM [Domains.domain
limit 10
错误信息:
错误:(L1:110):( L1:119):SELECT子句有混合 没有GROUP BY的聚合'D'和
字段'Web_Address_' 条款
工作ID: 对称光环-572:job_axsxEyfYpXbe2gpmlYzH6bKGdtI
我尝试使用group by clause on field D
和/或Web_address_
,但仍然遇到有关group by
的错误。
有谁知道为什么会这样?我以前用类似的查询取得了成功。
答案 0 :(得分:2)
您可能希望在此使用WITHIN RECORD聚合,而不是GROUP BY
select concat(p1, '.', p2), Web_Address_ FROM
(SELECT
NTH(2,split(Web_Ad`enter code here`dress_,'.')) WITHIN RECORD p1,
NTH(3,split(Web_Address_,'.')) WITHIN RECORD p2, Web_Address_
FROM (SELECT 'a.b.c' as Web_Address_))
P.S。如果您只是想切断网址的第一部分,那么使用RIGHT和INSTR函数会更容易。
答案 1 :(得分:0)
您还可以考虑使用URL functions:HOST,DOMAIN和TLD