Верните мне последнюю транзакцию, которую сделал пользователь - PullRequest
0 голосов
/ 05 мая 2019

Я хочу получить последние транзакции с этим номером счета с помощью clientid.У меня пока нет правильного решения.

Я уже пробую Выбрать * От transactions, где accountno = "A6B55" ЗАКАЗАТЬ ПО clientids desc LIMIT 1;

clientids  date   time   cardno  accountno   transactiontype   currbalance
---------------------------------------------------------------------------
1       2019-02-26 5:18AM  865505   A6B55     withdraw         20,000

2       2019-02-26 6:15PM  865505  A6B55     deposit            30,000

3       2019-02-26 9:10PM  78805   6979A     deposit           10,0000

Я ожидал предоставить мне последнюю транзакцию, совершенную этим аккаунтом.как, например, как вы можете видеть на моей учетной записи в таблице, ни один A6B55 не совершил две транзакции за этот день, и клиентские единицы для этой учетной записи равны 1 и 2. Я просто хочу получить клиентскую № 2 и дату, время, номер карты, тип транзакции и валютный баланс.Спасибо!

1 Ответ

0 голосов
/ 05 мая 2019

Пожалуйста, попробуйте это решение;

create table transactions (clientid INT PRIMARY KEY, date DATE, time TIME, CardNo INT, accountno VARCHAR(100), Transactiontype VARCHAR(20), curbalance float);

mysql> desc transactions;
+-----------------+--------------+------+-----+---------+-------+
| Field           | Type         | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+-------+
| clientid        | int(11)      | NO   | PRI | NULL    |       |
| date            | date         | YES  |     | NULL    |       |
| time            | time         | YES  |     | NULL    |       |
| CardNo          | int(11)      | YES  |     | NULL    |       |
| accountno       | varchar(100) | YES  |     | NULL    |       |
| Transactiontype | varchar(20)  | YES  |     | NULL    |       |
| curbalance      | float        | YES  |     | NULL    |       |
+-----------------+--------------+------+-----+---------+-------+
7 rows in set (0.00 sec)

mysql> insert into transactions values(1, '2019-02-26', '05:18:00', 865505, 'A6B55', 'withdraw', 20000);
mysql> insert into transactions values(2, '2019-02-26', '18:15:00', 865505, 'A6B55', 'deposit', 30000);
mysql> insert into transactions values(3, '2019-02-26', '21:10:00', 78805, '6979A', 'deposit', 100000);

mysql> select * from transactions;
+----------+------------+----------+--------+-----------+-----------------+------------+
| clientid | date       | time     | CardNo | accountno | Transactiontype | curbalance |
+----------+------------+----------+--------+-----------+-----------------+------------+
|        1 | 2019-02-26 | 05:18:00 | 865505 | A6B55     | withdraw        |      20000 |
|        2 | 2019-02-26 | 18:15:00 | 865505 | A6B55     | deposit         |      30000 |
|        3 | 2019-02-26 | 21:10:00 |  78805 | 6979A     | deposit         |     100000 |
+----------+------------+----------+--------+-----------+-----------------+------------+

mysql> select * from transactions where accountno = 'A6B55' ORDER BY time desc LIMIT 1;
+----------+------------+----------+--------+-----------+-----------------+------------+
| clientid | date       | time     | CardNo | accountno | Transactiontype | curbalance |
+----------+------------+----------+--------+-----------+-----------------+------------+
|        2 | 2019-02-26 | 18:15:00 | 865505 | A6B55     | deposit         |      30000 |
+----------+------------+----------+--------+-----------+-----------------+------------+

Хорошего дня :) Ура ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...