데이터베이스에서 3 개의 주어진 숫자 중 가장 가까운 값을 찾고 "테스트"셀을 반환해야합니다.데이터 계산을 사용하는 SQL 선택 쿼리
이들은 내가 원하는 테이블의 r1, g1 및 b1 열이 다른 열이고 r2, g2 및 b2는 주어진 숫자입니다. 필자가 지금까지 가지고 무엇
d=sqrt((r2-r1)^2+(g2-g1)^2+(b2-b1)^2)
p=min(d/sqrt((255)^2+(255)^2+(255)^2))
는
$rr = 130;
$gg = 83;
$bb = 234;
SELECT test
FROM `my table`
WHERE MIN(SQRT(POWER($rr-r,2)+POWER($gg-g,2)+POWER($bb-b,2))/
(SQRT(POWER(255,2)+POWER(255,2)+POWER(255,2)))
임 내가 PHP를 사용하여 MySQL의 외부에서 계산을 할 아마도 경우,이 문제를 해결하는 방법을 찾고있다?
내 테이블의 데이터는 0에서 255 사이의 임의의 숫자이며 최적의 검색을 위해 어떤 알고리즘을 사용할 수 있습니까?
숫자 주어진 샘플 테이블
╔════╦══════════════╦══════╦════╦═════╦
║ id ║ test ║ r ║ g ║ b ║
╠════╬══════════════╬══════╬════╬═════╣
║ 1 ║ sample1 ║ 4 ║ 72 ║ 251 ║
║ 2 ║ sample2 ║ 148 ║ 9 ║ 139 ║
║ 3 ║ sample3 ║ 101 ║ 233║ 88 ║
║ 4 ║ sample4 ║ 231 ║ 147║ 16 ║
╚════╩══════════════╩══════╩════╩═════╝
RR = 151 GG = 18 BB = 내가 그것을 "sample2를"를 반환 할 140 는
게시자는 스키마, 샘플 데이터 및 예상 출력을 이상적으로 SQLFiddle로 게시하십시오. –
하나의 id 열과 primary_key라는 또 다른 열이 있습니다. 어떤 것이 기본 키입니까? – jarlh
필자는 내 질문을 편집했습니다. 기본 키는 id – evnartabt