你可以使用以下 SQL 查询语句来获取三张银行卡某一天的第一条流水记录。假设表名为 transactions
,列名如下:
card_number
: 银行卡号transaction_date
: 交易日期transaction_time
: 交易时间amount
: 交易金额
我们将假设查询某一天的数据,并且通过银行卡号过滤,只获取三张银行卡的信息。这里是一个例子查询语句:
SELECT t.card_number, t.transaction_date, t.transaction_time, t.amount
FROM transactions t
INNER JOIN (
SELECT card_number, MIN(transaction_time) AS first_time
FROM transactions
WHERE transaction_date = '2024-09-21' -- 替换为你想查询的日期
AND card_number IN ('1234567890123456', '9876543210987654', '1122334455667788') -- 替换为三张银行卡号
GROUP BY card_number
) first_transactions
ON t.card_number = first_transactions.card_number
AND t.transaction_time = first_transactions.first_time
AND t.transaction_date = '2024-09-21'; -- 替换为你想查询的日期
解释:
- 子查询
first_transactions
获取每张银行卡在指定日期的第一笔流水时间。 - 使用
INNER JOIN
将子查询结果和原表连接,以便获取完整的流水记录,包括金额等其他信息。 - 使用
WHERE
子句限制查询的日期和银行卡号。
根据你的具体表结构,可能需要调整列名或其他条件。