AWQL(AdWords Query Language)寻求多范围查询(各种)
AWQL (AdWords Query Language) Seeking Multiple Range Query (of sorts)
好吧,这可能是"你到底在问什么"的问题,所以请耐心等待。 通常,我是一名 .NET 和 SQL 开发人员。 我正在与AWQL合作,试图获得一个adwords脚本来制作量身定制的报告。简短版本,我需要从单独的日期范围中提取,并且在弄清楚他们的"编译器"如何处理它甚至可能的情况下遇到问题。 简而言之,我需要将两个月的数据分别编译成一份报告。 现在我在考虑语法错误,但不确定。极客术语的最终目标是"WHERE(IMPRESSIONS_FROM_THIS_MONTH> IMPRESSIONS_FROM_LAST_MONTH)和(IMPRESSIONS_FROM_LAST_MONTH> MONTH_BEFORE_THAT"的效果。 理论上,所有这些都在同一个输出中(不在乎它是记录器还是直接到谷歌文档。 我确实有将其放入电子表格并通过电子邮件将链接发送给我的代码),但目前正在努力让它提取数据。 我所说的挣扎是指几天的失败,哈哈。
"SELECT KeywordText, ConversionValue, Id, QualityScore " +
"FROM KEYWORDS_PERFORMANCE_REPORT " +
"WHERE " +
"Id = " + kw +
" AND CampaignId = " + id +
" AND AdGroupId = " + gName +
" AND Impressions" +
" (DURING 20150101, 20150131) > IMPRESSIONS (DURING 20141201, 20141231)" );
(像 gName 这样的变量在完整的代码中,顺便说一句,直到我尝试复合逻辑为止) 我不确定最好的方法是一次查询所有内容,还是单独查询并以某种方式将结果拼接到单个报告中。 AdWords脚本似乎比我习惯的要严格得多,它的一些规则也没有很好的记录或解释。任何地方都与此相关的任何链接或代码块? 提前感谢任何帮助!
这段代码应该会有所帮助。根据您的目的替换所有变量。
var daterange1 ="Specify daterange here";
var dateRange2 ="Specify daterange here";
function main(){
var sheet = getSheet();
var AccountIterator = MccApp.accounts().forDateRange(dateRange).withIds(ACCOUNTS).get();
while(AccountIterator.hasNext()){
var Account = AccountIterator.next();
MccApp.select(Account);
getAccountDetails(sheet);
getAccountDetails2(sheet)
}
}
function getAccountDetails(sheet){
var query = "SELECT Device, CampaignName, ConversionValue, Cost, Conversions " +" FROM CAMPAIGN_PERFORMANCE_REPORT " +"WHERE Impressions > 0 " +" DURING "+dateRange;
Logger.log(query);
var report = AdWordsApp.report(query);
report.exportToSheet(sheet);
}
function getAccountDetails2(sheet){
var query = "SELECT Device, CampaignName, ConversionValue, Cost, Conversions " +" FROM CAMPAIGN_PERFORMANCE_REPORT " +"WHERE Impressions > 0 " +" DURING "+dateRange;
Logger.log(query);
var report = AdWordsApp.report(query);
report.exportToSheet(sheet);
}
function getSheet(){
var spreadsheet = SpreadsheetApp.openByUrl(url);
var sheet=spreadsheet.setActiveSheet(spreadsheet.getSheets()[0]);
return sheet;
}
我没有优化它,因为自己做将是一个很好的练习。但这将解决您的问题。
相关文章:
- 使用范围滑块和查询
- 如何使用EnquireJS使AngularJS范围变量依赖于媒体查询
- 未捕获的范围错误:WebSQL查询结果中的项索引超出范围错误
- javascript onload函数范围查询
- XML查询日期范围查找
- 按时钟范围查询mongo文档-正向和反向
- 我的弹性查询中出错 - 范围返回错误的请求
- AWQL(AdWords Query Language)寻求多范围查询(各种)
- 按日期范围查询 Firebase
- j查询范围滑块最大句柄卡住
- j查询函数范围混淆
- MongoDB:查询数组上的浮点数范围
- 猫鼬查询时的 Javascript 变量范围
- 查询大型 PouchDB 数据集的最高性能范围方式
- SQL查询上的PHP AJAX日期时间范围问题
- PHP/MySQL查询以按日期范围对列求和
- Mongo日期范围查询(GMT)
- Javascript范围查询使用jQuery $.ajax
- js无法使用日期范围查询参数获取新创建的用户
- 日期时间范围查询