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 428,366 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,424 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: Programming Forums
Views: 1043 | Replies: 3 | Solved
Reply
Join Date: Dec 2007
Posts: 368
Reputation: OmniX is an unknown quantity at this point 
Rep Power: 1
Solved Threads: 1
OmniX's Avatar
OmniX OmniX is offline Offline
Posting Whiz

ORDER BY Multiple Columns

  #1  
May 16th, 2008
I have multiple columns I wish to order by.

I have columns:
# # # # (1, 2, 3, 4)
A 0 0 0 0
B 1 0 1 3
C 1 0 2 3

I want to ORDER BY 4, 3, 2, 1.

Syntax I am using:
"SELECT * FROM table ORDER BY 4, 3, 2, 1"
Note: I am not sure wether to use ASC or DESC - or even if I have to use it.

Thanks, Regards X
AddThis Social Bookmark Button
Reply With Quote  
Join Date: Nov 2007
Location: Bangalore, India
Posts: 3,098
Reputation: nav33n has a spectacular aura about nav33n has a spectacular aura about 
Rep Power: 8
Solved Threads: 240
nav33n's Avatar
nav33n nav33n is offline Offline
Posting Sensei

Re: ORDER BY Multiple Columns

  #2  
May 16th, 2008
Order by multiple columns work this way.
For example, you have 4 records.
field1 | field2 | field3 | field4
-------+-------+--------+----------
1 | 1 | 2 | 4
-------------------------------------
2 | 2 | 100 | 5
-------------------------------------
3 | 2 | 1 | 3
-------------------------------------
4 | 3 | 500 | 6
-----------------------------------
5 | 2 | 1 | 2

If your query is,
  1. $query = "select * from table order by field2,field3,field4";

the result would be,
field1 | field2 | field3 | field4
-------+-------+--------+----------
1 | 1 | 2 | 4
-------------------------------------
5 | 2 | 1 | 2
---------------------------------------
3 | 2 | 1 | 3
-------------------------------------
2 | 2 | 100 | 5
-------------------------------------
4 | 3 | 500 | 6
-------------------------------------


As you can see, it sorts field2 first. Then it sorts field3 maintaining the order of field2. Then maintaining the order of field2 and field3, it sorts field4.

I know my explanation isn't really good ! (Or is it more confusing ?)

Note: If you don't specify how you want to sort your records, it will sort in ascending order by default.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

*PM asking for help will be ignored*
Reply With Quote  
Join Date: Dec 2007
Posts: 368
Reputation: OmniX is an unknown quantity at this point 
Rep Power: 1
Solved Threads: 1
OmniX's Avatar
OmniX OmniX is offline Offline
Posting Whiz

Re: ORDER BY Multiple Columns

  #3  
May 16th, 2008
Ya thats what I have been trying.

The problem is I keep getting the same result.

That is:
The table comes out perfect BUT
it comes out backwards...

So what should be first is last, second is second last, and so on.

Get what I mean? Im not being confusing now

The thing is even when I put ASC or DESC the table stays the same way...

Ill relate my problem to your table.
I have sorted my table via field4 then field 3 and the output is a backward output.

Dont know why

Thanks nav, once again.
Reply With Quote  
Join Date: Dec 2007
Posts: 368
Reputation: OmniX is an unknown quantity at this point 
Rep Power: 1
Solved Threads: 1
OmniX's Avatar
OmniX OmniX is offline Offline
Posting Whiz

Re: ORDER BY Multiple Columns

  #4  
May 18th, 2008
I figured it out!

Stupid Syntax imo but I know now.

Go the mysql reference manual!
Reply With Quote  
Reply

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

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

 

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