SQLize Online / PHPize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
-- ** PROBLEM 1 -- Create a new table named "Device" with these columns: -- Id - required field, auto-generated, primary key -- SerialNumber - needs to be able to hold 10 alphanumeric characters -- Name - the device's name - 50 characters max -- Create another table called "Usage" used to hold usage data -- Id - required field, auto-generated, primary key -- DeviceId - refers to the Id column of the Device table above -- StartTime - the start date and time for this usage -- EndTime - the end date and time for this usage -- Gallons - the number of gallons reported by the device for a given hour create table Device ( Id int identity(1,1) primary key, SerialNumber nvarchar(10) not null, Name nvarchar(50) not null ); create table [Usage] ( Id int identity(1,1) primary key, DeviceId int, StartTime DateTime, EndTime DateTime, Gallons int ); -- ** PROBLEM 2 -- Insert a couple devices into the Device table -- SerialNumber Name -- DVC0000101 Device 1 -- DVC0000102 Device 2 insert into Device (SerialNumber, Name) values ('DVC0000101', 'Device 1'); insert into Device (SerialNumber, Name) values ('DVC0000102', 'Device 2'); -- Also insert a few records for each device into the Usage table. -- Make it so the usage is for hourly time intervals. -- For this problem we want to add few hours of usage for two different calendar days. insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (1, '2024-10-01 11:15:00.000', '2024-10-01 12:15:00.000', 100); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (1, '2024-10-01 13:00:00.000', '2024-10-01 14:00:00.000', 200); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (1, '2024-10-02 13:00:00.000', '2024-10-02 14:00:00.000', 150); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (1, '2024-10-03 10:00:00.000', '2024-10-03 11:00:00.000', 300); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (2, '2024-10-01 11:30:00.000', '2024-10-01 12:30:00.000', 100); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (2, '2024-10-02 13:00:00.000', '2024-10-02 14:00:00.000', 170); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (2, '2024-10-02 11:30:00.000', '2024-10-02 12:30:00.000', 350); insert into [Usage] (DeviceId, StartTime, EndTime, Gallons) values (2, '2024-10-03 13:00:00.000', '2024-10-03 14:00:00.000', 200); -- ** PROBLEM 3 -- Write a query to get the total usage for each calendar day per device. -- The output should look something like this: -- SerialNumber | UsageDate | TotalGallons -- DVC0000101 | yyyy-MM-dd | ###.# -- DVC0000101 | yyyy-MM-dd | ###.# -- DVC0000102 | yyyy-MM-dd | ###.# -- DVC0000102 | yyyy-MM-dd | ###.# select GETDATE(); -- select DeviceId, Date(StartTime), sum(Gallons) TotalGallons from [Usage] -- group by DeviceId, Date(StartTime);
Stuck with a problem? Got Error? Ask ChatGPT!
Copy Clear