Amazon DynamoDBで、条件に指定した値のいずれかに一致するレコードをすべて取得する

qlog公式からのメッセージ:ログインをしていなくてもいいねを押すことができます!

RDBで言うところのwhere的な使い方
テーブル内のすべてのレコードを参照するので遅い
pythonで書く場合の参考

インポートとテーブル指定まで

import boto3
from boto3.dynamodb.conditions import Attr

dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('YourTableName')

クエリの発行
例えばカラム名が"TagName"で、"イギリス"、"レベル1"、"難しい"のいずれかと一致する場合

response = table.scan(
    FilterExpression=Attr('TagName').is_in(['イギリス', '難しい', 'レベル1'])
)    

結果の出力

items = response['Items']
for item in items:
    print(item)

他の条件の種類としては
一致する場合はeq
一致しない場合はne
https://boto3.amazonaws.com/v1/documentation/api/latest/_modules/boto3/dynamodb/conditions.html


vranometria