Selecting columns by position?

Started by Jerry LeVanover 21 years ago8 messagesgeneral
Jump to latest
#1Jerry LeVan
jerry.levan@eku.edu

Hi,

Is there any generic to select columns by position ie

select the first, third, and fifth columns from ....

I can't see anything in SQL...not to sure about
PL/PgSQL...

Thanks

Jerry

#2Jeffrey Melloy
jmelloy@visualdistortion.org
In reply to: Jerry LeVan (#1)
Re: Selecting columns by position?

Jerry LeVan wrote:

Hi,

Is there any generic to select columns by position ie

select the first, third, and fifth columns from ....

I can't see anything in SQL...not to sure about
PL/PgSQL...

Thanks

Jerry

No, not really. What kind of world do you live in where the position is
more meaningful than the name?

Jeff

#3Jerry LeVan
jerry.levan@eku.edu
In reply to: Jeffrey Melloy (#2)
Re: Selecting columns by position?

Well, a simple example, this is the ninth month,

I have some summaries that display monthly totals,
It would be nice if I could simply print columns
1-n if this is the nth month of the year and the total
for the year...

Jerry

On Sep 7, 2004, at 5:32 PM, Jeffrey Melloy wrote:

Show quoted text

Jerry LeVan wrote:

Hi,

Is there any generic to select columns by position ie

select the first, third, and fifth columns from ....

I can't see anything in SQL...not to sure about
PL/PgSQL...

Thanks

Jerry

No, not really. What kind of world do you live in where the position
is more meaningful than the name?

Jeff

#4Jaime Casanova
jcasanov@systemguards.com.ec
In reply to: Jerry LeVan (#3)
unique constraints on foreign keys

Hi all,

I have a reference table that holds all the status
used in a system (it's a very little table just 10 or
15 rows).

create table status (
cod_status char(2) not null primary key,
nam_status text not null
);

create table some_other_table (
... definition of the table ...
status char(2) not null references status
);

ok. This is the idea if a want to do a reference to
the status table i need to create a primary key or a
unique index on the status table.

Obviously the planner will choose always a seq scan in
such a table (it's obvious to you, it's obvious to me,
but not to the planner), but the planner will
calculate the cost of use the index and will choose
the seq.
So, there is a way to teach the planner always do a
seq on that table and do not ask for use the index?
There is a way to not enforce the creation of a
primary or unique index on a referenced table?

(I mean, a way that not involves the use of a "set"
instruction because the odbc not allow such
instructions)

Thanx in advance,
Jaime Casanova

_________________________________________________________
Do You Yahoo!?
Informaci�n de Estados Unidos y Am�rica Latina, en Yahoo! Noticias.
Vis�tanos en http://noticias.espanol.yahoo.com

#5Stephan Szabo
sszabo@megazone23.bigpanda.com
In reply to: Jaime Casanova (#4)
Re: unique constraints on foreign keys

On Mon, 20 Sep 2004, Jaime Casanova wrote:

I have a reference table that holds all the status
used in a system (it's a very little table just 10 or
15 rows).

create table status (
cod_status char(2) not null primary key,
nam_status text not null
);

create table some_other_table (
... definition of the table ...
status char(2) not null references status
);

ok. This is the idea if a want to do a reference to
the status table i need to create a primary key or a
unique index on the status table.

Obviously the planner will choose always a seq scan in
such a table (it's obvious to you, it's obvious to me,
but not to the planner), but the planner will
calculate the cost of use the index and will choose
the seq.
So, there is a way to teach the planner always do a
seq on that table and do not ask for use the index?
There is a way to not enforce the creation of a
primary or unique index on a referenced table?

Not really. It's not the index that's important per-se, it's the
uniqueness that is implied. The SQL spec requires the set of referenced
columns to be the set of columns of a unique or primary key on the
referenced table and we enforce that. Without that the behavior of all the
foreign key types becomes as complicated as the match partial behavior
because you have to be able to deal with multiple matching referenced
rows.

#6Ramiro Batista da Luz
ramiro@onda.com.br
In reply to: Stephan Szabo (#5)
unsubscribe

----------------------------------------------------------------
Mensagem Enviada utilizando o Onda Mail.
http://www.onda.com.br
Onda Provedor de Servicos S/A

#7Jaime Casanova
jcasanov@systemguards.com.ec
In reply to: Stephan Szabo (#5)
Re: unique constraints on foreign keys
 --- Stephan Szabo <sszabo@megazone.bigpanda.com>
escribi�: 

On Mon, 20 Sep 2004, Jaime Casanova wrote:

There is a way to not enforce the creation of a
primary or unique index on a referenced table?

Not really. It's not the index that's important
per-se, it's the uniqueness that is implied.

OK. What about to teach the planner always do a
seq on that table and do not ask for use the
index? but not using "set" instructions. can i do
that?

_________________________________________________________
Do You Yahoo!?
Informaci�n de Estados Unidos y Am�rica Latina, en Yahoo! Noticias.
Vis�tanos en http://noticias.espanol.yahoo.com

#8Stephan Szabo
sszabo@megazone23.bigpanda.com
In reply to: Jaime Casanova (#7)
Re: unique constraints on foreign keys

On Mon, 20 Sep 2004, Jaime Casanova wrote:

--- Stephan Szabo <sszabo@megazone.bigpanda.com>
escribi�:

On Mon, 20 Sep 2004, Jaime Casanova wrote:

There is a way to not enforce the creation of a
primary or unique index on a referenced table?

Not really. It's not the index that's important
per-se, it's the uniqueness that is implied.

OK. What about to teach the planner always do a
seq on that table and do not ask for use the
index? but not using "set" instructions. can i do
that?

Not really. Are you worried about the cost of doing the plan analysis for
the index scan or that it might choose to actually use the index?
Theoretically, it's only going to currently plan the fk scan on status
once per connection because that plan should be saved.