-2

特定のデータセットを表示しようとしています。私の問題は、データの一部が別のテーブル、同じデータベースにあることです。だからこれは私が持っているものです:

2つのテーブル。T1には5つの列があります。T2には8つの列があります。FormId列は、2つのテーブル間で共通です。DateSubmitted列をT1からT2に移動してからSELECT、結果の結合された列に対してクエリを実行する必要があります。SELECTこれまでのところ、T2の有効なクエリしかありません。DateSubmitted列をT1からT2に移動してから、SELECTクエリを実行する方法がわかりません。UNION私はここや他のフォーラムで見つけた提案を試しJOINましたが、成功しませんでした。動作するクエリの作成についてサポートが必要です。

T2のSELECTクエリ:

SELECT
SubmissionId,
FieldName,
FieldValue
FROM
#__submission_values
WHERE
FormId = 6
AND
FieldName IN ('field1','field2','field3','field4','field5','field6')
ORDER BY SubmissionId ASC

サンプルデータ

T1 
DateSubmitted  FormId
2013-02-01    6
2013-02-02    6
2013-02-03    6
2013-02-04    6
2013-02-05    6
2013-02-06    6

T2 
FormId  FieldName     FieldValue   SubmissionId 
6        Field1        Value1       1 
6        Field2        Value2       2 
6        Field3        Value3       3 
6        Field4        Value4       4
6        Field5        Value5       4 
6        Field6        Value6       6
4

2 に答える 2

0

これは使えませんか?

UPDATE T2
SET T2.DateSubmitted=T1.DateSubmitted
WHERE T1.FormId=T2.FormId
于 2013-02-24T01:30:44.663 に答える
0

編集:両方のテーブルを結合する選択が必要な場合、クエリは次のようになります

SELECT t2.SubmissionId,
       t2.FieldName,
       t2.FieldValue,
       t1.DateSubmitted
  FROM t2 INNER JOIN 
       t1 ON t2.FormId = t1.FormId
 WHERE t2.FormId = 6 AND
       t2.FieldName IN ('field1','field2','field3','field4','field5','field6')
 ORDER BY t2.SubmissionId

sqlfiddle

于 2013-02-24T01:45:24.860 に答える