추천 학습: mysql 비디오 튜토리얼
시스템에서 주문이든 반품 주문이든 일부 플랫폼에서는 판매자 검토가 필요한 반면 다른 플랫폼에서는 그렇지 않으므로 주문을 설정하거나 반품할 수 있습니다. 시스템의 주문 반품 주문의 프로세스 노드입니다.
각 프로세스 노드에 대해 고객의 요구 사항은 시스템 하에서 직원의 역할에 따라 각 노드를 배포하여 회사 전체 직원이 주문을 처리하는 대신 개인에게 할당할 수 있어야 한다는 것입니다.
위 시나리오에서 제가 구현한 솔루션은 처리할 해당 노드를 주문 테이블과 반품 주문 테이블 모두에 추가하여 여러 사람이 처리할 수 있는 경우 해당 노드를 분리하여 저장하는 것입니다. 직원 ID가 설정되었습니다.
따라서 주문을 쿼리하는 방법도 그에 맞게 수정해야 합니다. 모든 사람은 자신이 처리할 수 있는 주문만 볼 수 있습니다.
테이블의 샘플 내용은 다음과 같습니다.
직원이 시스템에 로그인하면 해당 ID를 얻을 수 있으며, 해당 필드에서 해당 ID를 검색해야 합니다. 비즈니스 검토, 재무 검토 또는 컬렉션의 위탁자에서. 이때 SQL은 어떻게 변경해야 할까요?
SQL을 변경하기 전 제가 생각했던 것은 이전에 MYSQL의 많은 기능을 요약해 놓은 것이었고, 위의 구현에는 분명히 이를 달성하는 데 도움이 되는 해당 기능이 MYSQL에 있을 것입니다. 물론, 찾았습니다.
MySQL은 쉼표로 구분된 문자열 목록에서 지정된 문자열의 위치를 찾을 수 있는 FIND_IN_SET()이라는 내장 문자열 함수를 제공합니다.
FIND_IN_SET() 함수는 두 개의 매개변수를 허용합니다:
needle
은 찾을 문자열입니다. needle
是要查找的字符串。haystack
haystack
은 검색할 문자열을 쉼표로 구분한 목록입니다. FIND_IN_SET() 함수는 매개변수 값에 따라 정수 또는 NULL 값을 반환합니다.
SELECT t.id_,t.order_sn,t.create_time, t.business_employee_ids,cus.customer_title FROM wms_orders t LEFT JOIN wms_customer cus ON cus.id = t.buyer_id WHERE t.order_status != 100 AND t.comp_id = 8815 AND FIND_IN_SET( '8910', t.business_employee_ids ) AND t.order_status = 14 AND ( t.parent_order_sn IS NULL OR t.parent_order_sn = '' ) ORDER BY t.id_ DESC결과는 다음과 같습니다. 스크린샷에서 위 결과에서 ID 6594, 6523, 6373으로 구성된 세 가지 주문은 직원 번호 8910에 의해서만 처리될 수 있습니다. 위의 SQL 직원 번호를 8912로 변경하면 이 세 가지 주문은 결과 범위 내에 있어서는 안 됩니다. 이 기능을 사용하여 쿼리하는 것이 가능한지 확인합니다. 쿼리 결과는 다음과 같습니다. 결과는 쿼리에 문제가 없음을 증명합니다. Interlude이틀 전 한 동료가 그룹에 스크린샷을 게시하고 다음과 같이 질문했습니다.
간단한 설명:
이미지 주소 열에는 이전 데이터 주소가 저장됩니다. 이제 새 데이터 센터가 온라인 상태이므로 사진을 얻으려면 새 주소로 바꿔야 합니다. 이 글을 읽다보니 예전에 MYSQL에서 문자열을 대체할 수 있는 REPLACE() 함수가 생각났습니다. 따라서 업데이트 설명은 다음과 같습니다.UPDATE wms_platform_wear_brand SET brand_img = REPLACE ( brand_img, "http://***/udata/interface/timer/pic/getAttachPic.do?attachId=", "wms/orderGoods.do?method=getAttachPic&attachId=" )권장 학습: mysql 비디오 튜토리얼🎜
위 내용은 mysql의 find_in_set 문자열 검색 기능 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!