Ben bu soru için uygun bir başlık (değilse, buna göre değiştirin lütfen) seçilmiş ama ben çalışıyorum aşağıdaki basitleştirilmiş tablo yapısını dikkate ettik eğer ben bilmiyorum:
----------------------------------------------
| date | i | j | k | x | y | z |
----------------------------------------------
| 100209 | 1 | 2 | 3 | 4 | 5 | 6 |
----------------------------------------------
| 100210 | 2 | 3 | 4 | 5 | 6 | 7 |
----------------------------------------------
| 100211 | 0 | 1 | 2 | 3 | 4 | 5 |
----------------------------------------------
| 100212 | 1 | 2 | 3 | 4 | 5 | 6 |
----------------------------------------------
| 100213 | 6 | 5 | 4 | 3 | 2 | 1 |
----------------------------------------------
i
, j
, k
, x
, y
, z
, tüm ilişkili olmayan, tamsayılar / yüzen, hepsi farklı faktörleri temsil eden ve büyüklük çok farklı emir ( i
değişebilir olabilir 1 - 1000 - 10 süre j
100 arasında olabilir em>).
Ben benzer koşullar paylaşmak tarihleri seçmeye çalışıyorum; i
bir dizi göz önüne alındığında, j
, k
, x
, y
, {[(5)] ı return all results ordered by closeness, bir bütün olarak değerlerin for instance, if i = 1
, j = 2
, k = 3
, x = 4
mi} değerleri, y = 5
ve z = 6
sorgu bu sırayla aşağıdaki tarihleri dönmesi gerekir:
- 100209
- 100212
- 100210
- 100211
- 100213
I'm not sure if this is relevant or not to the question, but some values (i
, j
, k
) ortalama more is better ise diğer değerler (x
, {[(5)] }, z
) tersi anlama:. less is better s>
How I should build such a query? Is this possible with SQL alone?
@Pentium10:
Senin yorumuna elimden en iyi şekilde cevap vermeye çalışacağım. İşte benim verilerin bir örnek:
---------------------------------------------------------------------------------
date | temperature | humidity | pressure | windSpeed | moonDistance
---------------------------------------------------------------------------------
090206 | 7 | 87 | 998.8 | 3 | 363953
---------------------------------------------------------------------------------
...... | ... | ... | .... | ... | ......
---------------------------------------------------------------------------------
100206 | 10 | 86 | 1024 | 2 | 386342
---------------------------------------------------------------------------------
100207 | 9 | 90 | 1015 | 1 | 391750
---------------------------------------------------------------------------------
100208 | 13 | 90 | 1005 | 2 | 396392
---------------------------------------------------------------------------------
100209 | 12 | 89 | 1008 | 2 | 400157
---------------------------------------------------------------------------------
100210 | 11 | 92 | 1007 | 3 | 403012
---------------------------------------------------------------------------------
100211 | 6 | 86 | 1012 | 2 | 404984
---------------------------------------------------------------------------------
100212 | 6 | 61 | 1010 | 3 | 406135
---------------------------------------------------------------------------------
100213 | 7 | 57 | 1010 | 2 | 406542
---------------------------------------------------------------------------------
Benim tablo yapısı satırlarının daha fazla sütun ve binlerce var ama umarım bu benim açımdan net almak için yeterli olacaktır. Ben muhtemelen yanlış olsun çünkü benim önceki örnekte olduğu gibi bu değerleri sipariş girişimi için gitmiyorum, ama temelde bu verilerle sorguları iki tür yapmanız gerekir:
- show me all dates, ordered by the resemblance of the conditions provided by me strong>
- show me all dates, ordered by the resemblance of the conditions observed in date X strong>
Ben ikinci sorgu kolayca ilkini kullanarak arşivlenmiş olabilir anlıyorum, ama benim sorunum birkaç sütun kullanarak benzerlik göre sıralama yatıyor, ben ordered by closeness, bir bütün {[(gibi tüm değerlerin "demek ne 1)]} ama kafam gerçekten çok sütun ile uğraşırken dönmeye başlar.
The goal is to to be able to produce results like this:
Today is really similar to d/m/yy, very similar to d/m/yy, somewhat similar to d/m/yy, ...
Benim durumumda hava ve atmosfer verilerle çalışıyorum ama sanırım yardımcı olur eğer employees
(attendance
sahip olma açısından bu sorun, aklınıza gelebilecek {[(2)] } ve monthlySalary
sütunlar) ve en yakın mesela, attendance = 100%
, hoursPerWeek = 40
ve monthlySalary = $5000
benzer çalışanlar tarafindan.
PS: Şimdi bu çalışanların örnek verdiğim çalışanların tablo ile size ({[(hesaplayabiliriz çünkü ben çalışıyorum hava örnek göre olabilir eğer ben artık gerçekten emin değilim 1)]} örneğin) ve tür sütunları ağırlık, ama ben aynı hava tablo ile yapılabilir sanmıyorum -. input is appreciated anyhow em>
PS2: Ben de kendimi yeterince ifade eğer hala şüpheniz varsa lütfen bana bildirin, emin değilim em>.
Bounty
Some good suggestions so far, however none of them truly solve my problem. I'm setting up a bounty to hopefully gather even more possible solutions to this problem. Thanks.