66 lines
1.1 KiB
Plaintext
66 lines
1.1 KiB
Plaintext
-- to check duplicate CarRegistration
|
|
SELECT
|
|
`driverID`,
|
|
COUNT(*) AS `count`,created_at
|
|
FROM
|
|
`CarRegistration`
|
|
GROUP BY
|
|
`driverID`
|
|
HAVING
|
|
COUNT(*) > 1;
|
|
--
|
|
|
|
|
|
-- to delete duplicate
|
|
WITH CTE AS (
|
|
SELECT
|
|
MIN(`id`) AS `min_id`
|
|
FROM
|
|
`CarRegistration`
|
|
GROUP BY
|
|
`driverID`
|
|
)
|
|
DELETE FROM
|
|
`CarRegistration`
|
|
WHERE
|
|
`id` NOT IN (SELECT `min_id` FROM CTE);
|
|
|
|
-- get for employee
|
|
SELECT
|
|
d.`maritalStatus` AS NAME,
|
|
COUNT(*) AS `count`
|
|
FROM
|
|
`driver` d
|
|
WHERE
|
|
d.`maritalStatus` IN('Maryam', 'Salma', 'Mena') AND DATE(d.created_at) = CURDATE()
|
|
GROUP BY
|
|
d.`maritalStatus`
|
|
ORDER BY
|
|
COUNT
|
|
DESC
|
|
|
|
|
|
-- get driver without cars
|
|
|
|
SELECT
|
|
d.id, d.phone
|
|
FROM
|
|
`driver` d
|
|
WHERE
|
|
d.id NOT IN (SELECT driverID FROM CarRegistration);
|
|
|
|
|
|
-- car without drivers
|
|
|
|
SELECT
|
|
cr.created_at, cr.driverID
|
|
FROM
|
|
`CarRegistration` cr
|
|
WHERE
|
|
cr.driverID NOT IN (SELECT id FROM driver);
|
|
|
|
|
|
|
|
----- driver
|
|
SELECT phone,email,name_arabic,national_number FROM `driver` WHERE national_number ='29209290106392'
|
|
ORDER BY `driver`.`created_at` DESC |