| ahoj, prosím vás, nevíte proč to nefunguje?
adminer vypisuje
"Chyba v dotazu: Syntax error near 'zalozky.time,zalozky.strana,zalozky.id_cla nku,zalozky.id [WHEN 'clanek' THEN ' at line 3"
SELECT
CASE zalozky.strana
WHEN 'kniha' THEN books.title,zalozky.time,zalozky.strana,zal ozky.id_clanku,zalozky.id
[WHEN 'clanek' THEN article.title,zalozky.time,zalozky.strana,z alozky.id_clanku,zalozky.id]
ELSE user.nick,zalozky.time,zalozky.strana,zaloz ky.id_clanku,zalozky.id
END
FROM zalozky
LEFT JOIN article ON zalozky.id_clanku = article.id
LEFT JOIN books ON zalozky.id_clanku = books.id
WHERE zalozky.zobrazit = '1' && zalozky.iduser = '1'
ORDER BY zalozky.time DESC
díky. :)
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 4.5.2011 10:42 |
|
|
|
| sorry, už jsem to vyřešil. jsem tam měl místo then - than.... :-D
tady ještě posílám ten funkční kus, kdyby někdo měl lepší řešení, budu rád když se podělíte.
SELECT
(CASE
WHEN zalozky.strana = "kniha"
THEN books.title
WHEN zalozky.strana = "clanek"
THEN article.title
ELSE users.nick
END)
AS title,
zalozky.time,zalozky.strana,zalozky.id_clan ku,zalozky.id
FROM zalozky
LEFT JOIN article ON zalozky.id_clanku = article.id
LEFT JOIN books ON zalozky.id_clanku = books.id
LEFT JOIN users ON zalozky.id_clanku = users.id
WHERE zalozky.zobrazit = '1' && zalozky.iduser = '1'
ORDER BY zalozky.time DESC
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 4.5.2011 12:14 |
|
|
|
| ale přece jen by jste mi mohli pomoci. potřeboval bych pouze pomocí mysql, ověřit existenci záznamu a pokud existuje, tak vložit, pokud né = false.
potřebuju přidat do tabulky záložky nový řádek. předtím ale musím ověřit existenci idu na který v té záložce budu odkazovat. Přičemž id, který budu ověřovat je v rozdílné tabulce než záložky. Důležité je aby se to vešlo pouze do jednoho query.
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 4.5.2011 13:43 |
|
|
|
| teď mě napadá že by to mohlo jít insert ..selectu
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 4.5.2011 13:46 |
|
|
|
| tak tohle by stačilo, ale potřeboval bych aby to hodilo false, když id neexistuje. protože ten příkaz se provede i přesto, že zadám neexistující id.
INSERT INTO zalozky (id) SELECT id FROM books WHERE id = '478881'
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 4.5.2011 14:17 |
|
|
|
|
INSERT INTO zalozky (user,strana,time,idclanku,duplicita)
SELECT '{$_SESSION["log"]}' AS user, \"{$_GET["strana"]}\" AS strana, now() AS time ,id AS idclanku, \"{$duplicita}\" AS duplicita
FROM ".$tab." WHERE id = '{$id}'
ON DUPLICATE KEY UPDATE time = now()
a tekhle vypadá funkční verze. mír s vámi.
----------
[link]
[link]
Někdy kokot kokotem není, někdy je to prostě jenom pták. (odpovědět) | qteck | | | 364250869 | 5.5.2011 21:15 |
|
|
|