- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQLで'ABC'をDBの'AB'にHIT)
SQLで'ABC'をDBの'AB'にHITする方法
このQ&Aのポイント
- 現在、sqlite3をVC++2013で使用している状況です。
- 'ABC'という文字列をDBの'AB'にHITさせる方法を探しています。
- 現在はキーを一文字ずつ増やして検索して最小のrow数を持つデータを取得していますが、他に良い方法はあるでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- kmee
- ベストアンサー率55% (1857/3366)
回答No.5
- ggggggggggg hhhhhhhhhhh(@tasketeqq1)
- ベストアンサー率15% (36/231)
回答No.3
- ggggggggggg hhhhhhhhhhh(@tasketeqq1)
- ベストアンサー率15% (36/231)
回答No.2
- ggggggggggg hhhhhhhhhhh(@tasketeqq1)
- ベストアンサー率15% (36/231)
回答No.1
お礼
ありがとうございました。SQL側に手段が無さそうなのでC++で普通に書きます。
補足
なかなか説明不足ですいません。 あと返事が遅れて申し訳ありません。 上記の方にも書きましたが、 「ある製品の型番ABC000-00で ABC000の部分共通の情報がDBに入れてあり、 後ろの端数-00が-01になってもDBの情報は共通のまま使える という状況を想定しています。 なので新たにABC000-01とかABC000-0Bとかの型番が入ってきたら ABC000の情報をHITさせて出したいのです。」 という状況です。 あまりDBに慣れてないもので こういった場合って結構あるんじゃないかと思ったので 私の知らない素晴らしい方法が無いかとお尋ねした次第です。 (現在半分諦めて、全型番のDBを作り、そのテーブルを介して共通情報をリンクする案を模索しています) >と、少ない方から実行すれば、全部実行する必要が無い場合があります。 おお!確かにおっしゃる通りですね。 ありがとうございます。 >・先頭から一文字ずつ比較し、連続で一致する文字数を求める >・上記の「一致数」の最も多いものを抽出する >というのがルールなら「先頭から一文字ずつ比較し、連続で一致する文字数を求める」関数を作って、MAXの行を抽出する、という方法があります。 この辺は、やはりSQLでは用意されてはいないんですよね?