여기서 Clause의 SQL 문 조건
아래 sql 쿼리에 대한 where 문 조건을 만드는 데 문제가 있습니다.
표시하지 않는 where 조건을 추가하고 싶다.num1그리고.num2둘 다 0이거나 둘 중 하나라도 0인 경우 값
SELECT Num1, Num2
FROM Position
WHERE (Num1 IS NOT NULL AND Num2 IS > NOT NULL)
ORDER BY PositionDateTime DESC ;
결과:
+---------+---------+
| Num1 | Num2 |
+---------+---------+
|
| 47.3941 | 8.68005 |
| 0 | 0 |
| 47.4385 | 8.61106 |
| 47.4385 | 8.61106 |
이것을 시험해 보세요.
SELECT Num1, Num2
FROM Position
WHERE Num1 <> 0
OR Num2 <> 0
ORDER BY PositionDateTime DESC ;
를 사용하여 다음 항목을 사용할 수 있습니다.
SELECT Num1, Num2
FROM Position
WHERE IFNULL(Num1, 0) <> 0 AND IFNULL(Num2, 0) <> 0
ORDER BY PositionDateTime DESC
설명:두 값이 모두 (인 경우 행을 표시하지 않을 수 있습니다.Num1그리고.Num2)는 0(또는 NULL) 또는 이러한 값 중 하나(또는 NULL)입니다.Num1또는Num2)는 0(또는 NULL)입니다.따라서 두 값이 모두 표시되는 행만 표시해야 합니다.Num1그리고.Num2의 값은 0(및 NULL)이 같지 않습니다.이 때문에,Num1 <> 0 AND Num2 <> 0조건으로서NULL 기본값을 설정하려면IFNULL(두 번째 파라미터는 NULL 대신 사용되는 값입니다).MySQL 에서는, 다음과 같은 차이가 없습니다.IFNULL(Num1, 0) <> 0 AND IFNULL(Num2, 0) <> 0그리고.Num1 <> 0 AND Num2 <> 0
스트레이트 스트레이트가 필요하죠?<>연산자:
SELECT Num1, Num2
FROM Position
WHERE Num1 IS NOT NULL AND Num1 <> 0 AND
Num2 IS NOT NULL AND Num2 <> 0
ORDER BY PositionDateTime DESC
또,coalesce조금 더 우아하게 질문할 수 있도록 하기 위해서입니다만, 이것은 아마 개인의 취향에 관한 문제일 것입니다.
SELECT Num1, Num2
FROM Position
WHERE COALESCE(Num1, 0) <> 0 AND
COALESCE(Num2. 0) <> 0
ORDER BY PositionDateTime DESC
쿼리를 다음과 같이 변경할 수 있습니다.
SELECT num1, num2
FROM position
WHERE num1 <> 0 AND num2 <> 0
ORDER BY positiondatetime DESC ;
시행: Num1 <> 0 및 Num2 <> 0
SELECT Num1, Num2
FROM Position
WHERE (Num1 is not null and Num2 is not null)
ORDER BY PositionDateTime DESC
SELECT Num1, Num2
FROM Position WHERE Num1 <> 0 AND Num1 IS NOT NULL AND Num1 <> ''
AND Num2 <> 0 AND Num2 IS NOT NULL AND Num2 <> ''
ORDER BY PositionDateTime DESC ;
언급URL : https://stackoverflow.com/questions/47788868/sql-statement-condition-in-where-clause
'programing' 카테고리의 다른 글
| Gradle에게 두 개의 종속성에 대해 동일한 버전을 설정하도록 강제하려면 어떻게 해야 합니까? (0) | 2022.11.10 |
|---|---|
| "너무 많은 연결"을 방지하는 방법 (0) | 2022.11.10 |
| Larabel 5.2 - pluc() 메서드가 어레이를 반환합니다. (0) | 2022.11.10 |
| Larabel: MariaDB - 장인 이행: 갱신 행 (0) | 2022.11.10 |
| 사용자가 맨 아래로 스크롤했는지 확인합니다(창뿐만 아니라 모든 요소). (0) | 2022.11.10 |