2017-01-12 21 views
0

私は1億エントリ以上のDBを持っており、私はmysqlでクエリを実行する必要があります。 私は2つの数字で2つのコロンを持っています。 1つは長いエンタープライズ番号で、もう1つは短いエンタープライズ番号です。どちらの数字も関連しています。 たとえば、企業は112233445の短い番号と11223344566777の長い番号を持ちます。 私は、短い番号が長い番号の始まりと異なるすべての行を選択する必要があります。手伝って頂けますか ?where句内のComplexe sqlクエリ

+0

列のデータ型? – jarlh

答えて

1

使用LIKE

SELECT * 
FROM yourTable 
WHERE long_num NOT LIKE CONCAT(short_num, '%') 

あなたは、あなたがWHERE句に2つ目の条件を追加することができ、14個の文字を持っていない、長い数字に結果を制限したい場合:

SELECT * 
FROM yourTable 
WHERE long_num NOT LIKE CONCAT(short_num, '%') AND 
     CHAR_LENGTH(long_num) <> 14 
+1

'私は2つの数字で2つのコロンを持っています。 '...あなたはこれを異なって解釈しますか? –

+0

それは魅力のように機能します – Vince

+0

あなたが熟練しているように他の質問があります:long_numberに14人のキャラクターがいない場合、どうすれば結果が得られますか? – Vince