2017-11-16 4 views
0

私はLIKE演算子を使用して、アクセス可能な10 SQLクエリに変数を使用します。アクセス10のSQLクエリ

例:

temporary variable var contains value bs 
var = "bs" 

私は、ゼロ以上の数字が続く一時変数の値で始まるすべての文字列にマッチします。

私は、クエリを発射しようとしています:

select * from xyz where variety LIKE "@[tempvars]![var] + [0-9]*" 

それは0レコードを返しています。 ありがとうございました。

+1

msアクセスがサポートしていないクエリでREGEXを使用しようとしているようです。ただし、カスタム関数を使用することができます:このスレッドを参照してください:https://stackoverflow.com/questions/10393087/expressing-basic-access-query-criteria-as-regular-expressions –

+2

_DO Microsoft Access用にこのタグを使用しないでください代わりに[ms-access]を使用してください._ – jarlh

+0

ヌルレコードは問題ではありません。 Nullはゼロではありません。 –

答えて

0

あなたが引用符の外であなたのtempvarを参照し、連結のための&を使用する必要があります。

select * from xyz where variety LIKE "@" & [tempvars]![var] & "[0-9]*" 

これは、その後、リテラル@variety始まるが、その後、何が[tempvars]![var]にあるすべてのレコードを返します。数字、そして任意の文字数を入力します。

+0

まだ0レコードを返します。私はbs01のエントリを持つレコードを持っています。 –

+0

これは文字列 '@'で始まらないのですか? –

+0

入手しました。どうもありがとうございました 。非常にばかげた間違い。 @Erik von Asmuth –

0

あなたのテーブルにその種類があるかどうかを確認できます。あなたのテーブルでその品種が利用可能な場合は、同じような演算子で検索しないでください。

関連する問題