2012-02-03 125 views
1

您好我想更改Select语句的返回值。我需要在SQL中完成。 说,我们MySQL - 如果Select语句不返回任何内容,则更改返回值

SELECT CourseCode FROM Course WHERE CourseName='?' -- '?' refers to user value 

如果用户值为null或者课程名称是不是在数据库中,我想select语句返回“不适用”。如果可能,请给我一个解决方案,我可以在WHERE子句之后编辑代码。由于

回答

0
SELECT CourseCode FROM Course WHERE CourseName='?' 

UNION ALL 

SELECT 'Not Applicable' 
WHERE NOT EXISTS (
    SELECT CourseCode FROM Course WHERE CourseName='?' 
) 
+0

感谢ü洙多后,不是!你救了我整个晚上都没有醒过来!您的解决方案非常完美 – user859385 2012-02-03 19:13:39

0

有一个函数IFNULL(),您可以决定什么该查询返回值是否为空,但它的WHERE

2
SELECT IFNULL(Course.CourseCode,'Not applicable') AS CourseCode 
FROM (SELECT 1) AS dummy 
LEFT JOIN Course ON CourseName='?' 
+0

+1我喜欢这个......比我的回答更高效。 – 2012-02-03 18:32:09

+0

谢谢你,先生。我觉得迈克尔的回答更好,因为我更了解它。 – user859385 2012-02-03 19:12:43