这是针对更新字段的,我正在检查以确保编号AND关键字 - >或者存在广告系列名称以防止重复。
此查询未按预期执行:
$STH = $DBH->prepare("
SELECT *
FROM campaigns
WHERE number = :number AND keyword = :keyword
OR name LIKE :name"
);
我希望它检查是否(number = number AND keyword = keyword)OR(name = name) - 由于两个不同的语句与彼此无关。即使我将它们包在括号中,我仍然得不到正确的结果。
任何帮助?
答案 0 :(得分:4)
LIKE 如果它不应该像 = 运算符
那样需要%SELECT * FROM campaigns WHERE (number = :number AND keyword = :keyword) OR name LIKE %:name%"
答案 1 :(得分:1)
尝试就好了
$STH = $DBH->prepare("SELECT *
FROM campaigns
WHERE (number = :number AND keyword = :keyword)
OR name LIKE :name"
);