-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Description
Hello,
I'm currently working with the sqlx and have encountered a scenario where I need to conditionally include the column event_name filter in my SQL query. Specifically, I want to omit the event_name condition when its corresponding value is nil or not provided, without manually constructing the entire query string.
Here's the query and code I'm using:
query := `
SELECT *
FROM i_event_log_kst_day e
WHERE e.partition_timestamp BETWEEN DATE :startTime AND DATE :endTime
AND e.partner_id = :partnerID
AND e.event_name = :eventName
ORDER BY e.created_at, e.user_id
`
arg := map[string]interface{}{
"startTime": startTime,
"endTime": endTime,
"partnerID": partnerID,
"eventName": eventName,
}
result, err := a.db.NamedQuery(query, arg);When eventName is nil or not provided, I would like the query to exclude the AND e.event_name = :eventName condition, effectively ignoring the event_name column in the filtering process.
Is there a recommended approach within the sqlx library to achieve this dynamic behavior without resorting to manual query string manipulation?
Thank you for your assistance.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels