正在尝试将SQL脚本从SQL Server T-SQL转换为GCP BigQuery SQL,并且需要维护ansi nulls设置以确保结果相同。有没有办法让谷歌BigQuery在比较null = null时返回true (即下面的'null = null Is true‘)? 显示不同输出的T-SQL和BigQuery示例: --GCP BigQuery test:
begin
declare null1 string;
declare null2 string;
select case when null1 = null2 then 'null = null is tru
BigQuery是否支持标准SQL中的任何和所有运算符? 我正在尝试查找所有在部门中获得高于最低工资的用户,但下面的查询不起作用。我一直收到“意想不到的关键字”信息 select ENAME_, JOB_ from `tescomobile---bigquery.internal.testing1`
where SAL_ = ANY(
select min(sal_) from `tescomobile---bigquery.internal.testing1`
group by DEPTNO_)
group by JOB_,ENAME_
我的Google Bigquery表有date和time列。表中每隔10分钟发布一次新数据,因此日期字段应为"2018-10-26“,时间字段为"19:05:00”。下一条记录将类似于日期和时间字段的"2018-10-26“和"19:15:00”。如何按一小时汇总每天的数据(每天24条记录)?
SQL请求使用Apps脚本从Google Sheets发送。以下是谷歌bigquery.gs脚本的一部分:()
...
var sheet = SpreadsheetApp.getActiveSheet();
var sql = 'SELECT date, t
我目前使用的是BigQuery和GROUP_CONCAT,它们工作得非常好。但是,当我尝试像在GROUP_CONCAT中那样将ORDER BY子句添加到SQL语句中时,我收到一个错误。
例如,像这样的东西
SELECT a, GROUP_CONCAT(b ORDER BY c) FROM test GROUP BY a
如果我尝试指定分隔符,也会发生同样的情况。
你有什么想法来解决这个问题吗?
我有一个python文件,它使用datalab.bigquery执行写出的SQL查询。但是,我将这个SQL查询保存在相同的GitHub存储库中,所以我想知道是否有一种方法可以运行github SQL文件,而不必复制和粘贴查询。
目前它看起来是这样的:
import datalab
import datalab.bigquery as bq
import pandas as pd
df = bq.Query('''
SELECT
CASE
WHEN advanc
我正在关注BQML ,关于如何根据婴儿的性别、孕期长短和母亲的人口统计信息来预测婴儿的出生体重。
当执行用于评估模型的SQL时,BigQuery会截取以下错误:
Failure in computing PREDICT: Null value found in input.
这是求值SQL:
#standardSQL
SELECT
*
FROM
ML.EVALUATE(MODEL `bqml_tutorial.natality_model`,
(
SELECT
weight_pounds,
is_male,
gestation_we
我想使用R代码而不是SQL或DBI来对BigQuery连接进行编程,而不是下载表。 我想使用R代码而不是SQL或DBI来编程。目前我已连接到BigQuery,但我正在使用的表格太大,无法下载。我想知道是否有一种方法可以在数据库中使用R代码进行查询。我尝试过的Google搜索只显示了如何使用SQL和DBI (在R中)进行查询,但我想使用R语言。有没有一种方法可以在R中做到这一点,就像在BigQuery或SAS中使用SQL一样? 我不想使用这样的代码: sql_query <-
"SELECT x,sum(y) FROM `table1`;" 或 x <- y %&g
这可能不限于BigQuery,而是一般的SQL。
我有这个SQL,并且希望在第一个字段("code")为NULL时排除它。
SELECT REGEXP_EXTRACT(data, r'#\d+') code, COUNT(1)
FROM mydataset.mytable
GROUP BY 1
这就是我最后发现的工作:
SELECT REGEXP_EXTRACT(data, r'#\d+') code, COUNT(1)
FROM mydataset.mytable
WHERE REGEXP_EXTRACT(data, r'#\d+
我是SQL的新手,我正在尝试进行查询: SELECT
clientId,
pagePath,
SUM(CASE
WHEN isExit IS NOT NULL THEN last_interaction
ELSE
nextTime
END
) AS time_on_page
FROM (
SELECT
hits.page.pagePath,
hits.isExit,
hits.time/1000 AS hits_time,
LEAD(hits.time/1000, 1) OVER (PARTITION B
从正式文档中可以看到,它首先将表加载到Spark中,然后使用.sql()执行查询。
words = spark.read.format('bigquery') \
.option('table', 'bigquery-public-data:samples.shakespeare') \
.load()
words.createOrReplaceTempView('words')
# Perform word count.
word_count = spark.sql(
'SELECT word, SUM
我想提取完全匹配的数据,而不是部分匹配的数据。
但是,如果我执行下面的sql代码,我无法提取它们:
我估计这段sql代码没有提取数据,但它提取了所有数据行。
[SQL代码]
WITH a AS(
SELECT
001 AS id_a,
112345678901234567 AS x
UNION ALL
SELECT
002,
112345678901233567
UNION ALL
SELECT
003,
112345678901232568
),
comp_
我们使用BigQuery的非遗留SQL将字符串字段转换为日期时间字段。
日期时间字段被"None“和"0.0”之类的值损坏,这会导致CAST语句失败。
我们看到,对于其他类型的SQL,有TRY-CATCH函数和ISNUMERIC()测试-- BigQuery似乎不支持这两种方法。
下面是一个捕获"None“但无法捕获随机浮点数或整数的示例:
CASE
WHEN UPDT_DT_TM LIKE 'None' THEN NULL
ELSE CAST(UPDT_DT_TM AS DATETIME)
END AS UPDT_DT_TM,
除了BigQue
我正在将Teradata迁移到BigQuery SQL。我有一个SQL,它计算Teradata中组中的百分位数。在迁移到BigQuery时,我没有找到一个适当的方法来复制这个功能。在烧烤文档中,它说ORDER BY子句在percentile_cont中是不允许的。
Teradata中的SQL:
select
unique_id,
rf_score,
percentile_cont(0.75) within group (order by col1) as a,
percentile_cont(0.5) within group (order by col1
有人知道如何返回日期吗?例如:如果表在CURRENT_TIMESTAMP中没有结果,那么返回日期: BigQuery?
所以以后我可以用它来比较其他的表。目前,我无法将"null“日期与其他表日期进行比较。
示例SQL查询:
SELECT
CASE
WHEN updated IS NULL THEN CURRENT_TIMESTAMP()
ELSE MAX(updated)
END AS latest_date
FROM `my-data-test.dbsource.test_test_table`
GROUP BY updated
为什么SQL只允许嵌套子查询?
例如,以这个问题为例
Find : ratings.数量最多的职业中的用户
表名为打分,包含列
user_idoccupationrating
在Postgres或Bigquery中,我会这样做
with ratings_by_user as (
select occupation, user_id, count(*) num_ratings
from ratings
group by 1,2
),
max_ratings_by_occupation as (
select occupation, max(num_ratings) as max_rating
有人能提供在PHP中使用Bigquery API的工作示例吗?我看到有python和java的例子,但找不到PHP的任何东西。
下面是bigquery浏览器的
例如,您可以在浏览器中运行此SQL
SELECT corpus,count(*) FROM publicdata:samples.shakespeare
group by corpus limit 5;
我想通过PHP模拟类似的调用。
即使是一个如何使用PHP的粗略示例也会有很大帮助。
一般的SQL和BigQuery新手。如何在BigQuery中计算一列的计数?正如您从代码示例中看到的,查询将appName的计数返回为WhitelistNames,但我希望获得WhitelistNames的计数。
SELECT
COUNT(appName) AS WhitelistNames,
bridgeToken
FROM (
SELECT
bridgeToken,
appName
FROM
[DB]
GROUP BY
bridgeToken,
appName )
GROUP BY
bridgeToken
ORDER BY
W
因此,我在Google BigQuery中有一个SQL数据库,它具有UTC格式的购买订单时间戳,我使用DAYOFWEEK函数将其转换为一个数字(然后使用CASE语句将其转换为人类可读的名称)
SQL查询是:
SELECT TypeOfDrink,
CASE WHEN (DAYOFWEEK(CreateAt)=1) THEN 'Sunday' END AS Sunday,
CASE WHEN (DAYOFWEEK(CreateAt)=2) THEN 'Monday' END AS Monday,
CASE WHEN
不熟悉airflow。尝试运行sql并将结果存储在BigQuery表中。
获取以下错误。不确定在何处设置default_rpoject_id。
请帮帮我。
错误:
Traceback (most recent call last):
File "/usr/local/bin/airflow", line 28, in <module>
args.func(args)
File "/usr/local/lib/python2.7/dist-packages/airflow/bin/cli.py", line 585, in test
我想从Bigquery视图中检索我的实时数据。随函附上我目前的查询:
select datetime(timestamp_micros(visitstarttime*1000000),"Asia/Jakarta") as ga_datetime
, device.operatingSystem as ga_os
, trafficSource.source as ga_source
, trafficSource.medium as ga_medium
,COUNT(DISTINCT CONCAT(CAST(fullvisitorid AS string),CAST(visit
我有两个问题:
SELECT
COUNT(warehouseCode) as count,
warehouseCode
FROM 'sparePartEventsTable'
WHERE
sparePartCode = 'SP.0000' AND
sparePartConsumed = 'true'
GROUP BY warehouseCode
ORDER BY count DESC
和
SELECT
COUNT(*) as eventsCount,
DATE(TIME
我试图在BigQuery上的示例数据集上执行RFM分段。在我的SQL查询中,NTILE(5)根据行顺序将行划分为5个桶,并返回分配给每一行的桶号。在这种情况下,每个水桶的大小是相等的。我想找出如何创建不同大小的水桶。例如,桶1包含底部10%,桶2包含接下来20%的记录等等。谢谢!
#standard SQL
SELECT
fullVisitorId,
NTILE(5) OVER (ORDER BY last_order_date) AS rfm_recency,
NTILE(5) OVER (ORDER BY count_order) AS rf
我的BigQuery模式假设了company_name | email | email_2 | phone | mobile |,表中有大约50K条记录。我想要的记录,至少有一个电话号码和电子邮件。需要排成一排。email phone email mobile
email_2 phone email_2 mobile email email_2 phone email email_2 phone mobile
这方面的有效代码是什么,因为我对SQL和BigQuery都是新手?
FROM Property_Dataset.pmDATA
WHERE
(email IS NOT NULL AND
我在芝加哥犯罪数据集上使用google-bigquery。但是,我想从primary_type列中找出每个不同的block最常见的犯罪类型。要做到这一点,我将跟踪standardSQL。
数据:
由于芝加哥的犯罪数据相当大,有一个官方网站可以预览数据集:。
我当前的标准SQL:
SELECT primary_type,block, COUNT(*) as count
FROM `bigquery-public-data.chicago_crime.crime`
HAVING COUNT(*) = (SELECT MAX(count)
FROM (SELECT primary_type,
我使用的是BigQuery SQL。我有以下表格:
Table "public.org" (records all organisations)
Column │ Type │ Modifiers
──────────────┼────────────────────────┼───────────
code │ character varying(6) │ not null
name │ character varying(200) │ not null
setting
我正在尝试将一个sql查询实现为数据流中的转换。我从bigquery加载了一个表作为PCollection。我想像下面的查询一样聚合我的数据。
SELECT name, user_id, place, SUM(amount) as some_amount , SUM(cost) as sum_cost FROM [project:test.day_0_test] GROUP BY 1,2,3我如何能轻松地实现它。我听说数据流与Java支持在P集合上运行sql kind查询,但正确的python不支持。有人能帮我解决这个问题吗?
注意:
我想在一个P集合上实现这个查询。
我尝试了几种csv格式(不同的转义字符、引号和其他设置)从MySQL导出数据并将其导入BigQuery,但我无法找到在所有情况下都有效的解决方案。
下面的代码,用于导入/导出到MySQL。虽然,Cloud SQL不是BigQuery,但它是一个很好的起点:
SELECT * INTO OUTFILE 'filename.csv' CHARACTER SET 'utf8'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' ESCAPED BY '' F
我想在BigQuery表中运行以下SQL query: SELECT
LEAST(origin, destination) AS point_1,
GREATEST(origin, destination) AS point_2,
COUNT(*) AS journey_count,
FROM route
GROUP BY point_1, point_2
ORDER BY point_1, point_2; 像这样的桌子上: INSERT INTO route
( route_id, origin, destination, dur)
VALUES
( 1,
如何在PyPika中生成IF语句?
我正在尝试生成一个将行旋转到列的BigQuery查询。我发现,如果我在查询中使用以下内容(其中date_range来自WITH语句):
IF (date_range.kind = 'year', date_range.name, NULL) as year
那么这将会起作用。但是,我还没有找到在PyPika中生成这个SQL片段的方法。
为了完整起见,下面是我需要在BigQuery中运行的一个查询示例:
WITH date_range AS (
SELECT
CAST(EXTRACT(year FROM year) as string)
我最近从Workbench转向了BigQuery,并且在构建查询时注意到语法上的一些差异。BigQuery很难处理一个非常基本的SQL查询:
SELECT createdAt, incrementId, customerEmail
FROM order
WHERE customerEmail = 'email'
这是输出:
当我想返回最早日期的第一行时:
SELECT MIN(createdAt), incrementId, customerEmail
FROM order
WHERE customerEmail = 'email'
GROUP
我只在postgres仓库(Redshift)上使用过SQL,所以直到现在我才意识到BigQuery使用了不同的版本。下面是我想要运行的查询:
SELECT date_trunc ('month', c.created) AS month
, COUNT (DISTINCT (c.id)) AS charges
FROM stripe.charges c
GROUP BY 1
ORDER BY 1
下面是我收到的错误消息:
java.sql.SQLException: Simba(100032)执行查询作业时出错。消息:需要一个有效的日期部件名称,但在1:29找到c
我有一个关于BigQuery的问题,无法识别我指定的使用Concat字符串的字段键: SELECT
T2.MinHit,
CONCAT(CAST(T1.visitId AS STRING), CASE WHEN T1.hits.page.searchKeyword IS NULL THEN "(NULL)" ELSE T1.hits.page.searchKeyword END) AS Key1,
CONCAT("https://", T1.hits.page.hostname, T1.hits.page.pagePath) AS urlPage
FROM [