私はSQLの新人ですから、誰かにとっては簡単な質問かもしれません。今私は2つのテーブルがあり、AとBとしましょう。SQL:複数の条件を高速に検索する
Aには、「性別」、「年齢」、「学歴」、「勤務年数」、「居住状態」、「スキルレベル」、 、および "キャリア"。
Bには、「性別」、「年齢」、「学歴」、「勤務年数」、「居住状態」、「年収」の列があります。
は、今私はBからこれらの5つの条件で検索し、私はINNER JOINを使用しようとした列の表Aに「年収」を追加したい(最初の5は、Aと同じである)のような:
のSELECT A. *、B INNER FROM B.annual_income
がON(= A.gender B.gender)
AND(A.age = B.age)
AND(A.をJOIN academic_degree = B.academic_degree)
AND(A.years_of_working_experience = B.years_of_working_experience)
AND(A.state_of_residence = B.state_of_residence)。
コードは機能しましたが、時間がかかりました。問題を解決するためにはるかに速い勇気があるかどうか誰にも知られていますか?ありがとう!
こんにちは、非常に参考に返事に感謝!私たちが8人の年齢、2人の男女、3つの年齢、6つの異なる年数、5つの州を持つ場合、6歳の人を割り当てることができますか? 2年生、1年生、5年生、5年生の状態を指標「62155」に変換しますか? –
説明しているのは、多かれ少なかれ、自然キーと代理キーの間の両方の世界の中で最悪の傾向にある「スマートキー」の一種です。だから私はそれを提案しないだろう。属性の各組み合わせに整数を割り当てる場合は、順番に(そして2つのテーブルの間で一貫性があることを確認して)それを行うだけです。 –
私はそれを逐次的にすることも考えましたが、問題は2つのテーブル間で整合性を取る方法です。そんなことをするためにいくつかの例を教えてください。 –