Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resultのカラム名が重複している場合、エラーになるケースが有る #15

Open
sinmetal opened this issue Jul 2, 2019 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@sinmetal
Copy link
Member

sinmetal commented Jul 2, 2019

WHAT

Spannerでは以下のクエリはValidである

SELECT T1.Id, T2.Id  FROM (SELECT Id From Tweet ORDER BY Id Limit 100) T1 JOIN (SELECT Id From Tweet ORDER By Id Limit 100) T2 ON T1.Id = T2.Id

結果としては、SELECTで指定した順番で表示される

image

しかし、hakeを利用すると、 spanner: code = "FailedPrecondition", desc = "ambiguous column name \"hoge\"" になるケースが存在する

おそらく、Jsonに変換するところで、JsonのKeyがぶつかってしまっている。

@sinmetal
Copy link
Member Author

sinmetal commented Jul 2, 2019

CSVを場合は順番に表示すればよいけど、JSONにする場合はKeyが重複するので、どうするか悩ましいところ

@sinmetal
Copy link
Member Author

sinmetal commented Jul 2, 2019

実行したSQLからT1.Idとかを持ってきて置き換えるか?と思ったけど、以下のようなSQLだとそれもつらそうだなという気持ちに

image

@vvakame
Copy link
Member

vvakame commented Jul 2, 2019

ふつーに SELECT 1, 2, 3 もダメだったわ…

@tenntenn
Copy link
Member

tenntenn commented Jul 2, 2019

もう適当に重複しないように割り振るしかなさそうw

@sinmetal
Copy link
Member Author

sinmetal commented Jul 3, 2019

Optionsを受け取って、以下が選択できるようにする

  • []string のCaption的なものを受け取ってそれに従う
  • 適当に重複しないようになんか割り振る
  • 重複している場合は、エラーを返す

@tenntenn tenntenn self-assigned this Jul 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants