Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

Mysql Foreach एक टेबल से दूसरी टेबल तक भाग 2

ऐसा लगता है कि आप सशर्त एकत्रीकरण की तलाश में हैं:

select 
    u.user_id,
    u.username,
    min(case when a.action = 'IN' then a.dateTime end) `in`,
    max(case when a.action = 'OUT' then a.dateTime end) `out`
from 
    user u
    inner join user_attendance a on u.user_id = a.user_id
group by
    u.user_id,
    u.username,
    date(a.dateTime)
order by
    u.user_id,
    date(a.dateTime)

DB Fiddle पर डेमो :

| user_id | username | in                  | out                 |
| ------- | -------- | ------------------- | ------------------- |
| 1       | tiger    | 2019-10-01 08:00:00 | 2019-10-01 14:00:00 |
| 1       | tiger    | 2019-10-02 08:00:00 | 2019-10-02 14:00:00 |
| 2       | pooh     | 2019-10-01 08:00:00 | 2019-10-01 14:00:00 |
| 2       | pooh     | 2019-10-02 08:00:00 | 2019-10-02 14:00:00 |


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysqli में mysql_field_name का विकल्प

  2. MySQL परिणामों को अल्पविराम से अलग किए गए मानों में परिवर्तित करना

  3. Php/MySQL के साथ समयबद्ध घटनाएं

  4. MySQL विजुअल स्टूडियो चयनित ऑब्जेक्ट के लिए डिज़ाइन विंडो नहीं बना सकता

  5. लेनदेन के भीतर MySQL लेनदेन