【问题标题】:How to select rows with condition via concat?如何通过 concat 选择有条件的行?
【发布时间】:2020-04-08 17:28:25
【问题描述】:
SELECT CONCAT_WS(' ',NAME, SURNAME, 'was born in', DATE_FORMAT(BIRTHDAY,'%Y')) AS RESULT
FROM STUDENT
WHERE KURS == 1 OR KURS == 2;
我只需要 KURS 列包含“1”或“2”的那些行
SELECTS * FROM STUDENTS
【问题讨论】:
标签:
mysql
sql
database
where-clause
concat
【解决方案1】:
MySQL 中没有 == 运算符。大概,你的意思是:
WHERE KURS = 1 OR KURS = 2
可以简化为:
WHERE KURS IN (1, 2)
SELECT 子句看起来不错,应该可以正常工作。
【解决方案2】:
创建一个这样的子选择可能有效:
SELECT * FROM
(SELECT CONCAT_WS(' ',NAME, SURNAME, 'was born in', DATE_FORMAT(BIRTHDAY,'%Y')) AS RESULT
FROM STUDENT
WHERE KURS == 1 OR KURS == 2) AS Query
WHERE KURS = 1
【讨论】:
-
嗨,道格拉斯。为了使您的答案更具可读性,您可以使用反引号 ` 或波浪线创建代码围栏 ~ 。你可以看看editing-help