Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 6 years ago.
Improve this question
Knowing a user's date of birth, how can I determine the date they will reach a certain age?
I can calculate current age, but need to determine when, based on that calculation, to get the date of when they will turn a certain age, such as what date they will turn 18.
FLOOR(MONTHS_BETWEEN(TRUNC(sysdate), v.date_of_birth) / 12) age
You can use add_months function:
select add_months(birthdate, 12 * age) from t
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I have a mysql table that contains, among others, the columns personName, board (a bool that states if person is part of board or not) and board_date (a date column that contains the date that the person was elected to the board, if she was).
In my club, the people are elected for 5 year terms. I need to create a query that will return the people whose term will expire in the next 6 months. But I have no clue on how to do that math with those dates.
Can someone please give me a hand? I inherited this system from a previous administrator, and the client wants this. I'm not good with SQL
you can use date_add adding 6 months to now()
select *
from my_table
where date_add(board_date, INTERVAL 5 YEAR)
between now() and DATE_ADD(now(), INTERVAL 6 MONTH)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I Need help to select a number of data per month, there are 4 retailers and I need to select a total of transactions per month and the total amount for that month showing each month separately in sql.
Extract the month from the date and group by it. Then you can use aggregate functions to sum and count
select month(date_column),
sum(amount) as total_amount,
count(*) as transaction_count
from your_table
group by month(date_column)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question appears to be off-topic because it lacks sufficient information to diagnose the problem. Describe your problem in more detail or include a minimal example in the question itself.
Closed 8 years ago.
Improve this question
I'm trying to display hotel bookings from the 1st of every month.
Hotel (hotelNo,hotelName,hotelAddress)
Room (hotelNo,roomNo,type,price)
Guest (guestNo,guestName,guestAddress)
Booking (hotelNo,guestNo,dateFrom,dateTo,roomNo)
Here's what I have so far. Obviously it isn't working. How do I select the first of any given month?
SELECT hotelNo, dateFrom
FROM booking
WHERE datefrom >= to_date('01', 'dd');
If you want records that are on the first day of any month, then you can EXTRACT the day part of the date and compare it with 1:
SELECT hotelNo, dateFrom
FROM booking
WHERE EXTRACT(DAY FROM datefrom) = 1;
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I have a table
ID______credit________paydate
------------------------------
101_____10____________2012/01/01
101_____13____________2012/02/01
101_____8 ____________2012/03/01
101_____3 ____________2012/03/01
101_____22____________2012/05/01
..._____..____________..........
..._____..____________..........
999_____13____________2012/07/01
999_____38____________2012/08/01
I want to select all records for last 3 months(it is different last paydate for every ID) and where credit < 10
can someone help me with this??
thx and regards
You could use the DATEADD function to get the desired result:
SELECT *
FROM table
WHERE paydate >= DATEADD(month, -3, GETDATE())
AND credit < 10
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
How do I select records in Postgres that have hour values greater than 00:00:00? The field type is Timestamp with time zone.
Example record:
"2012-07-30 07:00:00-07"
I need everything that is greater than 00:00:00
Use extract(hour from ...). See the PostgreSQL date/time functions in the user manual.
CREATE TABLE test AS SELECT TIMESTAMP WITH TIME ZONE '2012-07-30 07:00:00-07' AS tstamp;
SELECT tstamp FROM test WHERE extract(hour from tstamp) > 0;