/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MySQL: Hvordan sammensætter jeg felter?
Fra : Magnus


Dato : 19-05-06 16:02

I MySQL har jeg har felterne id, dato, filtype, filkode dem vil jeg gerne
sat sammen til feltet sti som ser sådan ud.

/år/måned/dag/id_filkode.filtype

Dvs. hvis felterne har disse værdier:
Dato= 2006-05-19
Id=45
Filkode=ghre
Filtype=jpg

skal feltet sti være:
/2006/05/19/000045_ghre.jpg

Jeg har forsøgt herunder men kunne ikke få det til at fungere?

SELECT
CONCAT('/',year(dato),'/',month(dato),'/',day(dato),'/',id,'.',filtype) AS
sti FROM Billeder WHERE......


Hvordan kan jeg få vist tallet for måned og dag med 2 cifre så maj hedder 05
og ikke blot 5?


/Magnus



 
 
Ove Lie (19-05-2006)
Kommentar
Fra : Ove Lie


Dato : 19-05-06 17:25

"Magnus" <magnusFJERN@arnason.dk> skrev i melding
news:446dddd9$0$67259$157c6196@dreader2.cybercity.dk...
> I MySQL har jeg har felterne id, dato, filtype, filkode dem vil jeg gerne
> sat sammen til feltet sti som ser sådan ud.
>
> /år/måned/dag/id_filkode.filtype
>
> Dvs. hvis felterne har disse værdier:
> Dato= 2006-05-19
> Id=45
> Filkode=ghre
> Filtype=jpg
>
> skal feltet sti være:
> /2006/05/19/000045_ghre.jpg
>
> Jeg har forsøgt herunder men kunne ikke få det til at fungere?
>
> SELECT
> CONCAT('/',year(dato),'/',month(dato),'/',day(dato),'/',id,'.',filtype) AS
> sti FROM Billeder WHERE......
>
>
> Hvordan kan jeg få vist tallet for måned og dag med 2 cifre så maj hedder
05
> og ikke blot 5?

Klippet bit av select her, som kan forklare, eller lede deg på sporet:

SELECT date_format(tid, '%Y-%m-%d') as sort_dato



-Ove




Magnus (19-05-2006)
Kommentar
Fra : Magnus


Dato : 19-05-06 18:38

>> Hvordan kan jeg få vist tallet for måned og dag med 2 cifre så maj hedder
> 05
>> og ikke blot 5?
>
> Klippet bit av select her, som kan forklare, eller lede deg på sporet:
>
> SELECT date_format(tid, '%Y-%m-%d') as sort_dato
>

Sådan kan man også gøre... Jeg fandt ud af at gøre det sådan her:

SQL = "SELECT
CONCAT('/',domain,'/',arkiv,'/',YEAR(dato),'/',MONTH(dato),'/',DAYOFMONTH(dato),'/',id,'_',filkode,'.',filtype)
AS sti FROM Billeder.......

Men hvordan kan jeg så få "id" til at blive vist med 6 cifre dvs. 45 bliver
vist som 000045 ?



/Magnus



Peter Brodersen (19-05-2006)
Kommentar
Fra : Peter Brodersen


Dato : 19-05-06 23:03

On Fri, 19 May 2006 19:37:33 +0200, "Magnus" <magnusFJERN@arnason.dk>
wrote:

>Men hvordan kan jeg så få "id" til at blive vist med 6 cifre dvs. 45 bliver
>vist som 000045 ?

Kig på LPAD():
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#id2993693

mysql> SELECT LPAD(5,6,0);
+-------------+
| LPAD(5,6,0) |
+-------------+
| 000005 |
+-------------+
1 row in set (0.00 sec)

mysql> SELECT LPAD(45,6,0);
+--------------+
| LPAD(45,6,0) |
+--------------+
| 000045 |
+--------------+
1 row in set (0.01 sec)

--
- Peter Brodersen
Ugens værktøj - Find vej: www.findvej.dk

Søg
Reklame
Statistik
Spørgsmål : 177458
Tips : 31962
Nyheder : 719565
Indlæg : 6408173
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste