对于我的CIS类,我有SQL项目,我仍然是SQL的新手,并试图学习它。任何帮助将不胜感激。
质询:所收集的证据显示,车辆的颜色是白色,制造商是宝马,车上的一些字母被记住:板上有三个字母" C" s 。 需要:
我做了这个问题的第一部分:
select driver_name as "Driver Name", license_plate_number as
"License Plate Number", vehicle_make as "Make", make_year as "Year"
from driver, license
where driver.driver_id = license.driver_id
但是对于第二部分我得到一个空的回报,我不知道我做错了什么。这就是我试过的:
select driver_name, license_plate_number, vehicle_make, make_year
from driver, license
where driver.driver_id = license.driver_id and
license_plate_number like 'C%%CC%%' and
vehicle_make = "BMW"
and color = "white"
答案 0 :(得分:0)
你的问题是盘子上有三个字母“C”。
你写license_plate_number like 'C%%CC%%'
的方式意味着盘子必须以C开头而且双倍%不是必需的。 %sign是替换任意数量的字符串。
在板上任意三个字母“C”的正确条件是:
license_plate_number like '%C%C%C%'
在我们学习的同时,请学会使用正确的JOIN语法。您使用的样式是在SQL-92标准之前,已经过时了25年。
https://en.wikipedia.org/wiki/Join_(SQL)
SELECT d.driver_name, l.license_plate_number, l.vehicle_make, l.make_year
FROM driver d
INNER JOIN license l ON d.driver_id = l.driver_id
WHERE l.license_plate_number like '%C%C%C%'
AND l.vehicle_make = "BMW"
AND l.color = "white"