我创建下面的代码为应该返回满足两个条件中的记录的查询:嵌套联合查询
1- ID等于#7
2-病等于之一在单引号之间写的疾病
数据库中ID = 7的记录我正在应用此查询,没有将查询中列出的任何疾病作为属性“疾病”的值,所以该查询不应该返回任何记录作为结果。但是它作为查询的结果返回ID = 7的元组。你能告诉我我的代码有什么问题吗?我尝试用(OR)替换(||),但我仍然得到相同的结果。
SELECT *
FROM patients
WHERE disease = ('migraine' || 'stroke' || 'concussion' || 'down_syndrome' || 'epilepsy' || 'autism' || 'hydrocephalus' || 'dyslexia' || 'dystonia' || 'aphasia' || 'coma' || 'aneurysm' || 'batten_disease' || 'brain_cancer' || 'alzheimers_disease' || 'amyolrophic_alteral_sclerosis')
AND ID = '7'
什么是您的数据库 - MySQL或Oracle?选择一个 - 或者你在两个方面都看到相同的行为?请使用正确的标签。 – mathguy