私は活動の単一の表を持っています。いくつかは「評価」(50のtype_id)といくつかの「カウンセリング」(9のtype_id)というラベルが付けられており、活動の日付があります。これらの日付を比較して、評価後にカウンセリングを待つ時間を見つける必要があります. テーブルには多くの人の行が含まれており、それが「id」の主キーです。私の問題は、日付を比較できるように、同じ人の評価の詳細とカウンセリングの詳細の両方を含む結果行を作成する方法です。テーブルをそれ自体に結合しようとしましたが、ネストされたサブクエリを試しましたが、理解できません。私はAccess 2010を使用しています。私の愚かさを許してください、しかし、これはテーブルをそれ自体に結合する例です。
表は次のようになります。
ID TYPE_ID ACTIVITY_DATE_TIME
----------------------------------
1 9 20130411
1 v 50 v 20130511
2 9 20130511
3 9 20130511
上記の最後の 2 行には評価しか含まれていないため、それらを無視して、評価とカウンセリングの両方の「type-id」がある状況に取り組みます。
SELECT
civicrm_activity.id, civicrm_activity.type_id,
civicrm_activity.activity_date_time,
civicrm_activity_1.type_id,
civicrm_activity_1.activity_date_time
FROM
civicrm_activity INNER JOIN civicrm_activity AS civicrm_activity_1
ON civicrm_activity.id = civicrm_activity_1.id
WHERE
civicrm_activity.type_id=9
AND civicrm_activity_1.type_id=50;
これが実際にSQLで行うことができないのかどうか、私は実際に疑問に思っていますか? 私はそれが可能であることを望みますか?お待ちいただいてありがとうございます!