我正在尝试使用某些条件附加多个字段的名称。
这很好用:
InputStream in=getContentResolver().openInputStream(uri);
这也可行:
ParcelFileDescriptor pfd= getContentResolver().openFileDescriptor(uri,"rw");
但是,这告诉我语法错误:
select * from course
left join courseterm on course.courseID = CourseTerm.courseID
where courseterm.termID like 1 or 2
and course.expires not like '0000-00-00 00:00:00'
我无法弄清楚出了什么问题。任何人吗?
答案 0 :(得分:0)
set子句必须在表之后并加入
update course
left join courseterm on course.courseID = CourseTerm.courseID
set course.title = CONCAT('2015/2016-',`Title`)
where courseterm.termID like 1 or courseterm.termID=2
and course.expires not like '0000-00-00 00:00:00';
答案 1 :(得分:0)
这个where
条款:
where ( (courseterm.termID like 1) or
(2 and course.expires not like '0000-00-00 00:00:00')
)
“2”是一个被评估为“true”的整数,因此会被忽略。
这个where
子句有三个主要问题:
like
用于数字和字符串。in
对同一字段进行多次相等比较。因此,将逻辑正确写为:
where (courseterm.termID in (1, 2)
course.expires <> '0000-00-00 00:00:00')
)
这应该可以解决您后续的问题。