User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the MySQL section within the Web Development category of DaniWeb, a massive community of 391,145 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,154 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our MySQL advertiser:
Views: 1339 | Replies: 5
Reply
Join Date: May 2007
Posts: 8
Reputation: Nperic is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
Nperic Nperic is offline Offline
Newbie Poster

Any help would be appreciated

  #1  
May 13th, 2007
Hey guys, im in deep need of help for mysql. Ive been given a few questions most of them answered although theres 3 which are really bringing me down. I was wondering if u could get some help
Given this schema

borrow(transactionID, personID*, borrowdate, duedate, returndate)
author(authorID, firstname, middlename, lastname)
book_copy(bookID, bookdescID*)
book(bookdescID, title, subtitle, edition, voltitle, volnumber, language, place, year, isbn, dewey, subjectID*)
borrow_copy(transactionID*, bookID*)
person(personID, firstname, middlename, lastname, address, city, postcode, phonenumber, emailaddress, studentno, idcardno)
publisher(publisherID, publisherfullname)
written_by(bookdescID*, authorID*, role)
published_by(bookdescID*, publisherID*, role)
subject(subjectID, subjecttype)


1. i need to display the firstname and lastname of the people who returned books more than 7 days late.
-i tried using the datediff function although it came back as invalid, is there another way?

2. A borrower wants to borrow the book titled "PRINCIPLES AND PRACTICE OF DATABASE SYSTEMS", but finds out all of its copies are already borrowed by others. Write two queries to display other recommended titles using the following methods.
  1. Using partial matching of the query string -- note that the borrower is interested in a "DATABASE" book.
  2. By searching of other books borrowed by people who also borrowed the above title
-this killed me, im clueless

and my last one

3. i have to display the title of the book which has most physical copies. If there are more than one book with the largest number of copies, show them all. Your query should show the number of copies along with the title.
-eh? lol

Help with these would be great, describing what you did would be a bonus but then again i'm asking for too much. Any help would be appreciated. Thankyou
N
AddThis Social Bookmark Button
Reply With Quote  
Join Date: Mar 2007
Posts: 28
Reputation: cfAllie is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
cfAllie cfAllie is offline Offline
Light Poster

Re: Any help would be appreciated

  #2  
May 13th, 2007
Start with 1). Can you post your query and a description of what didn't work?
Reply With Quote  
Join Date: May 2007
Posts: 8
Reputation: Nperic is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
Nperic Nperic is offline Offline
Newbie Poster

Re: Any help would be appreciated

  #3  
May 13th, 2007
select firstname, lastname
from person, borrow
where person.personid = borrow.personid and datediff(dd, returndate, duedate) > 7

we were never properly taught to use datediff, so im a tad confused
Reply With Quote  
Join Date: Mar 2007
Posts: 28
Reputation: cfAllie is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
cfAllie cfAllie is offline Offline
Light Poster

Re: Any help would be appreciated

  #4  
May 13th, 2007
That's almost right! It looks like you're using sql server syntax. MySql's DateDiff() function works a little differently.

DATEDIFF(expr1,expr2)
DATEDIFF() returns expr1expr2 expressed as a value in days from one date to the other. expr1 and expr2 are date or date-and-time expressions. Only the date parts of the values are used in the calculation.

http://dev.mysql.com/doc/refman/4.1/...ction_datediff

So it doesn't require the interval ("dd" - for days). Try instead

where datediff(returndate, dueDate) > 7;
Reply With Quote  
Join Date: May 2007
Posts: 8
Reputation: Nperic is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
Nperic Nperic is offline Offline
Newbie Poster

Re: Any help would be appreciated

  #5  
May 13th, 2007
where person.personid = borrow.personid and datediff(returndate, dueDate) > 7
*
ERROR at line 3:
ORA-00904: "DATEDIFF": invalid identifier

Thats what i got, i dont think i can use the function at all. Should i nest it, so it becomes less sensitive?

I might just skip this one, given me enough problems already. Could you help me with the next two cfAllie your expertise is in need haha
Reply With Quote  
Join Date: Mar 2007
Posts: 28
Reputation: cfAllie is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
cfAllie cfAllie is offline Offline
Light Poster

Re: Any help would be appreciated

  #6  
May 13th, 2007
Originally Posted by Nperic View Post
where person.personid = borrow.personid and datediff(returndate, dueDate) > 7
*
ERROR at line 3:
ORA-00904: "DATEDIFF": invalid identifier

Thats what i got, i dont think i can use the function at all. Should i nest it, so it becomes less sensitive?

I might just skip this one, given me enough problems already. Could you help me with the next two cfAllie your expertise is in need haha



I think you may posted this question in the wrong forum. Its under MySql db, but it looks like you're using Oracle. Unfortunately, I'm not and don't know Oracle syntax
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)

 

DaniWeb MySQL Marketplace
Thread Tools Display Modes

Similar Threads
Other Threads in the MySQL Forum

All times are GMT -4. The time now is 6:51 am.
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC