저는 플라톤과 sqlalchemy (sqlite)를 사용하여 파이썬으로 작성된 회사에서 인터넷 검색 엔진을 연구하고 있습니다. 나의 현재 문제는 내가 원한다는 것이다.Python Flask Sqlalchemy Subst 쿼리
A.) 설명 필드 에 대한 일정량의 정보를 조회하십시오. B. 50 자 이전의 선호 검색어.
Google의 링크 입력란과 매우 흡사합니다. 당신이 무언가를 검색하면, 그것보다 아래에 단어의 100 자 링크를 반환합니다.
설명서를 읽었을 때 sqlalchemy에 mid() 함수가 없다는 것을 알았습니다. 또한 단지 최대, 최소를 지원 SQLAlchemy의이 게시물에서 발견, 그리고 내가 releazed 같은
links = Item.query(func.mid(Item.description, 0, 200).like('%helloworld%'))
쿼리를 구현하려고했던 기능 http://docs.sqlalchemy.org/en/latest/core/functions.html
의 sqlalchemy: get max/min/avg values from a table
SQL 문서를 평균 sqlite는 Substr 구문을 사용하며 시도했습니다. Item.query.filter (func.substr (Item.description, 0, 200) == '% helloworld %')
sqlalchemy에서이 문제를 해결할 수있는 방법이 있습니까?
내 코드 :
from sqlalchemy.sql.functions import func
def mainSearch(searchterm):
links = Item.query(func.mid(Item.title, 1, 3).Item.title.like('%e%'))
return links
HTML/신사 코드 :
{% for link in links.items %}
<div id="resultbox">
<div id="linkTitle"><h4><a href="{{ link.link }}">{{ link.title }}</a></h4> </div>
<div id="lastUpdated">Last Updated: {{ link.last_updated }} </div>
<div id="linkLink">{{ link.link }}</div>
<div id="linkDescription">{{ link.description | safe }}</div>
</div>
오류
형식 오류 : 'BaseQuery'객체가 호출되지 않습니다
내 데이터베이스 : SQLite는
내가 너무 SQL과 유사한에서 쿼리에 원 :
SELECT MID(column_name,start,length) AS some_name FROM table_name;
나는 우리가 열 설명에 쿼리 데이터에이 작업을 수행하기 위해 노력하고 있어요 전체 :
예 텍스트 :
기사 (약어로 ART)는 명사 옆에 사용되어 명사가 작성한 참조 유형을 나타내는 단어 (접두어 또는 접미사)입니다. 기사는 명사의 문법적 한정을 지정합니다. 일부 언어에서는 볼륨 또는 숫자 범위로 확장됩니다. 영어로 된 기사는 a, an, 그리고 (특정 상황에서) 일부입니다. "An"과 "a"는 Anglian 방언에서 "하나"(Saxon 방언의 "on"을 비교)이며 "Owan"이라는 숫자로 Modern Scots에서 살아남은 Old English "an"의 현대 형태입니다. "on"(노먼에 의한 "하나")과 "an"은 모던 잉글리쉬에서 살아남 았으며 "하나"는 숫자로 사용되었고 "an"("a", 자음으로 시작되는 명사 앞에)은 모두 부정확 한 기사.
기사는 여러 언어로 쉽게 조합 될 수없는 특수한 언어입니다.영어로 된 기사는 종종 기사와 시위 (예 : "this"와 "that")를 결합하는 결정자라고하는 더 넓은 음성 범주의 일부로 간주됩니다.
기사를 사용하는 언어에서 모든 예외가있는 모든 공통 명사는 특정 명사를 특정 언어 (예 : 단수 또는 복수)로 표현하는 것과 같이 특정 한정 성 (예 : 명확하거나 불명확 함)으로 표현됩니다.). 모든 명사는 해당 문서가있을 경우 해당 문서의 동등성과 일치해야하며, 기사가없는 경우 (기사가없는 것으로 간주 됨) 자체가 특정 정의를 지정합니다. 이것은 일반적으로 선택적인 다른 형용사 및 결정자와는 대조적입니다. 기사의 이러한 의무적 인 성질은 여러 언어로 가장 일반적인 단어 중 하나입니다. 예를 들어, 영어에서 가장 빈번한 단어는 다음과 같습니다.
기사는 일반적으로 명확하거나 불명확 한 것으로 특징 지어집니다. [2] 잘 개발 된 기사 체계를 가진 몇 언어가 추가적인 하위 유형을 구별 할 수 있습니다. 각 유형 내에서 언어는 성별, 숫자 또는 사례와 같은 문법적 속성 또는 인접한 소리에 따라 각 기사의 다양한 형태를 가질 수 있습니다. (ART로 약칭 함)이
물품에
명사 의해 참조되는 유형을 나타내는 명사와 함께 사용되는 단어 (접두사 또는 접미사)이다. 기사는 명사의 문법적 명확성을 지정합니다.
그래서 100,000 단어의 텍스트를 가져 와서 데이터베이스를 크래시하지 않습니다. 첫 번째 만 필요합니다.
이것은 SQL 데이터베이스에 대한 올바른입니까? Postgres 또는 MySQL이 아닌가요? – dizzyf
SQLAlchemy는 나열된 함수를 "구현"하지 않습니다. 'func'은 제네릭 (일부 이식성 지원 포함)이며 여러분이 던진 SQL 함수 표현식을 생성합니다. 어떤 DB를 사용하고 있으며'mid' 함수를 사용하고 싶습니까? 또한 오류가있는 경우이를 포함시키고 완전한 추적을 포함하십시오. –
문서에서 "모든 이름을 함수에 지정할 수 있습니다. 함수 이름이 SQLAlchemy에 알려지지 않은 경우 그대로 사용됩니다." –