我正面对一张大表,上面有从csv导入的数据。但是csv中的定界符没有被清除,因此输入数据看起来像这样:
alex@mail.com:Alex
dummy@mail.com;Bob
foo@bar.com:Foo
spam@yahoo.com;Spam
whatever@mail.com:Whatever
在导入期间:被定义为定界符,因此每一行都带有定界符;导入不正确。这导致了一个表的结构如下:
| ID | MAIL | USER |
|-- --|---------------------|----------|
| 1 | alex@mail.com | ALEX |
| 2 | dummy@mail.com;Bob | NULL |
| 3 | foo@bar.com | Foo |
| 4 | spam@yahoo.com;Spam | NULL |
| 5 | whatever@mail.com | Whatever |
由于无法重新导入,因此我在考虑使用SQL查询手动清理受影响行中的数据。因此,我尝试通过过滤WHERE USER IS NULL的行来组合SELECT和UPDATE语句,并在适用的情况下使用正确的值更新两列。
答案 0 :(得分:0)
您需要的是字符串函数。阅读一点,我发现Google BigQuery具有STRPOS()和SUBSTR()。
https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#substr
https://cloud.google.com/bigquery/docs/reference/standard-sql/string_functions#strpos
用于解决您描述的情况的更新查询如下:
<template>
<div>
<x-question
v-for="(question, index) in questions"
:key="index"
type="question.type"></x-question>
</div>
</template>
这里的想法是将邮件分为两部分,即;之前的部分。和之后的部分。希望这会有所帮助。