SQL SELECT クエリに次の構文を使用して、複数のテーブルからデータを取得しています (Sequel Pro を使用):
select Study_Results.CASNumber, Study_Results.Dose, Study_Results.Units, Study_Results.Effects, Studies.Species, Studies.Route, Studies.Result, ToxData_References.BriefReference, Studies.Study, Studies.Summary
from Study_Results, Studies, ToxData_References
where Study_Results.ProtocolID = Studies.ProtocolID
AND Studies.Location = ToxData_References.Location
AND Studies.Study = "Local Lymph Node Assay"
order by Study_Results.CASNumber
クエリはエラーなしで実行および終了しますが、結果を見ると、データが一致しないレコードのコピーがあります。つまり、クエリ結果で異なるレコードが正しく結合されていないようです。
質問: 構文に問題があり、データが一致しませんか?
ここにいくつかのサンプル出力があります(実際と予想)
1 行が正しい: 103694-68-4 10.0000 % NOE マウス皮膚 Symrise,2002c 局所リンパ節アッセイ 研究の条件下では、試験物質が皮膚感作物質である可能性は低い。49523 45957
しかし、取得した 2 行目では、同じ Study_Results.CASNumber を別の Study_Results.CASNumber のデータに適用しています。
103694-68-4 10.0000 % NOE マウス皮膚 Symrise,2002c 局所リンパ節アッセイ アセトン中 1%、3%、および 10% w/v の濃度で試験物質を適用すると、同位体の取り込みが 3 倍以上増加しました3% および 10% w/v 濃度で。したがって、試験物質は皮膚感作物質であることが示され、研究に使用されたプロトコルの有効性が確認されました。49523 45957
上記のデータは、実際には別の CASNumber に適用されます。