>  Q&A  >  본문

PHP 비즈니스 로직 및 mysql 최적화 문제 관련

uid, 사용자 이름을 저장하는 usr 테이블이 있습니다.
비즈니스 테이블 1, 저장된 정보에는 uid, 사용자 이름 필드가 포함됩니다.
비즈니스 테이블 2, 저장된 정보는 uid뿐입니다.
(비즈니스 테이블 2의 여러 데이터가 하나의 조각에 해당합니다. 비즈니스 테이블의 데이터 1)

기존: 쿼리가 비즈니스 테이블 2를 통과하고 데이터는 배열 목록이며 프런트 엔드 표시를 용이하게 하려면 사용자 이름을 목록에서 조합해야 합니다.
방법 1은 데이터베이스 usr 테이블로 이동하는 것입니다. 각 목록의 uid에 따라 사용자 이름을 쿼리합니다.
두 번째 방법은 먼저 비즈니스 테이블 1을 쿼리하고, 빈 배열 arr을 사용하고, 키는 uid를 저장하고, 해당 값은 사용자 이름을 저장하고, 목록을 탐색하고, array_key_exists를 사용하여 uid가 다음인지 확인하는 것입니다. arr의 키 중 하나인 경우 사용자 이름으로 arr[uid]를 가져옵니다

방법 2 장점은 사용자 이름에 대한 여러 데이터베이스 쿼리를 방지하지만 uid를 저장하기 위해 빈 배열 키를 사용하는 것에 대한 질문이 있습니다. uid 값이 10000과 같이 매우 큽니다. 여기에는 PHP 배열 메모리 문제가 포함됩니까(저는 이 지식에 대해 잘 모릅니다)
또한 방법 2의 다른 단점이 있는지 알고 싶습니다. 그렇다면 다른 더 나은 처리 방법이 있나요



赵。。。。赵得住赵。。。。赵得住2315일 전1181

모든 응답(3)나는 대답할 것이다

  • You bad bad

    You bad bad2018-07-13 16:36:23

    연결된 목록 쿼리. 외부 링크

    회신하다
    0
  • Summer

    Summer2018-07-11 11:52:36

    테이블이라도 쿼리하는 것이 좋습니다


    회신하다
    0
  • 취소회신하다