2017-07-27 20 views
-1

このSQL文の何が問題なのかを調べようとしています。これは、v3という名前のデータベースに追加しようとしている手順の最後にあります。geneSymbolInは、上記で定義されています。最後にWHEREに予期しないエラーが表示されます。有効なSELECTステートメントではありませんFROM句のネストされたSELECT文SQL

FROM (SELECT Probe_gene, logFC, adj_P_Value, gene, Study_ID, Group1, Group2 FROM v3.degContrastList WHERE gene = geneSymbolIn) AS CL, 
    (SELECT Study_ID, Disease, PMID, Time_Point, Treatment, Raw_Data FROM v3.degContrastListExperiment) AS ET, 
    WHERE CL.Study_ID = ET.Study_ID; 
+0

https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-veryを参照してください。 -simple-sql-query – Strawberry

+0

@Kyle - 私の解決策があなたの問題を解決したら、答えを受け入れて投票してください! – JRG

答えて

0

は、official docsは正しい構文を概説するのはかなり良い仕事をします。

+0

どちらが無効ですか? –

+1

すべてのこと、ああ...待って、それは完全なクエリではないという事実は、数十年前の "コンマ結合"の構文を使用して私を捨てた。問題は、2番目のサブクエリの後にコンマがあることです。 – Uueerdo

+0

小さな小さなカンマが私の死になる...ありがとう! –

0

コードを適切に書式設定すると、コードに何が問題なのかは明らかです。

FROM (
    SELECT Probe_gene, logFC, adj_P_Value, gene, Study_ID, Group1, Group2 
    FROM v3.degContrastList 
    WHERE gene = geneSymbolIn 
) AS CL, 
(
    SELECT Study_ID, Disease, PMID, Time_Point, Treatment, Raw_Data 
    FROM v3.degContrastListExperiment 
) AS ET, 
WHERE CL.Study_ID = ET.Study_ID; 

まず、SELECTステートメント。第二に、WHEREの前にコンマがあります。

0

FROMの文の前にはSELECTと記載されています。

追加のコンマは、別名ET後と間違っているWHERE句の前にあります。

FROM (SELECT Probe_gene, logFC, adj_P_Value, gene, Study_ID, Group1, Group2 
     FROM v3.degContrastList 
     WHERE gene = geneSymbolIn) AS CL, 
    (SELECT Study_ID, Disease, PMID, Time_Point, Treatment, Raw_Data 
     FROM v3.degContrastListExperiment) AS ET 
WHERE CL.Study_ID = ET.Study_ID; 
関連する問題