나는 다음과 같은 테이블이 있습니다구문 오류
CREATE TABLE Book(article int, subArticle numeric);
2 필드 - 첫번째 문서는 1.1가되도록 subArticle이 기사의 subarticles을 포함, 1.2 등 subarticles을
두번째 기사는 '1.2'subarticle을 가질 수 없습니다 -(1, 1.1),
(2, 1.2);
그래서 그 두번째 행이 올바르지 않습니다
표와 같은 값이 있습니다. '2.1', ... 서브 입자가 있습니다.
나는 비교 'subarticle'필드 ('1' '1.2'에서) 내 문서 부분은 '기사'필드에 따라 진짜 문서 값에 해당하는 만 라인을 떠나 다음 쿼리를 실행합니다
SELECT *
FROM Book
WHERE LEFT(subArticle, CHARINDEX('.', subArticle) - 1) = article;
그러나 WHERE 절에서 구문 오류가 발생하지 않습니다. WHERE 절이 없으면 오류가 없습니다. 값을 비교하여 값을 비교해야합니까? 나는 시도했지만 성공하지 못했다. 그렇다면 올바른 캐스트는 무엇입니까?
P. sqlite3 사용
와 SQL 서버 구문을 사용하려고 나는 (내가 SQL-초보자 해요) 무슨 뜻 이죠 확실하지 않다. 기사에서 서브 그룹을 들여 써야하므로 기사 1 : 서브 그룹 1.1 등 올바르게 입력하면 '1.1'을 int로 표시 할 수 없지만 숫자로 표시 할 수 있습니다 – Shurov