2つのクエリの結果を比較しようとしています。1つは外部でAsteriskサーバーに対して行われた呼び出しの呼び出しIDを取得し(10桁)、もう1つはサーバーから接続された呼び出しIDを取得します(11桁)。アウトバウンドコールには、番号の前に「1」が付加されます。現在、次のようなステートメントを使用しています。
select data2, from_unixtime(time_id) day from queuemetrics.queue_log
where time_id > '1346475600' and (data2, time_id) in
(select dst, unix_timestamp(calldate) from asteriskcdrdb.cdr
where calldate > '2012-09-01' and lastdata like <blocked for privacy>)
order by day;
data2
は10桁の数字を保持する列でdst
、11桁の数字を保持します。列の2〜11番目の文字のみをパターンマッチングできる方法はありますか?最初のものをスキップするには?明らかにLIKE
またはRLIKE
は便利ですが、これを機能させるには、ネストされたクエリを維持する必要があります。どんな助けでも素晴らしいでしょう。また、との奇妙な使用法にも注意を払わないfrom_unixtime
でunix_timestamp
ください。検索を機能させるために同じ形式で時間を必要とするかどうかを考えて実験していました。重要ではありません。