Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Consulta para crear una tabla en mi base de datos

Estas en el tema de Consulta para crear una tabla en mi base de datos en el foro de Mysql en Foros del Web. Buenas al foro, hago una consulta tengo una duda para crear una tabla en mi base de datos, es una base de datos de noticias ...
  #1 (permalink)  
Antiguo 07/04/2014, 22:41
 
Fecha de Ingreso: junio-2012
Mensajes: 30
Antigüedad: 11 años, 10 meses
Puntos: 0
Consulta para crear una tabla en mi base de datos

Buenas al foro, hago una consulta tengo una duda para crear una tabla en mi base de datos, es una base de datos de noticias que ya esta creada, pero ahora quiero crear una nueva tabla que va hacer las noticias rotativas, les paso las tablas...

Esta es la tabla noticia

Código MySQL:
Ver original
  1. CREATE TABLE `noticia` (
  2.   `titulo` varchar(255) NOT NULL default '',
  3.   `subtitulo` text NOT NULL,
  4.   `detalle` text NOT NULL,
  5.   `fuente` varchar(255) NOT NULL default '',
  6.   `categoria_id` int(1) NOT NULL,
  7.   `subcategoria` varchar(140) NOT NULL default '',
  8.   `foto` varchar(140) NOT NULL default '',
  9.   PRIMARY KEY  (`id`)
  10. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Bueno ahora lo que quiero es hacer una tabla que se va a encargar de las noticias rotativas, y que tiene que subir los datos titulo, foto y el id de la noticia, se me ocurrió de dos manera:

Este manera creo que esta mal.

Código MySQL:
Ver original
  1. CREATE TABLE `rotativas` (
  2.   `rotativas_id` int(1) NOT NULL auto_increment,
  3.   `id` int(1) NOT NULL,
  4.   `titulo` varchar(255) NOT NULL default '',
  5.   `foto` varchar(140) NOT NULL default '',
  6.   PRIMARY KEY  (`rotativas_id`)
  7. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Y la otra que creo que esta bien es esta

Código MySQL:
Ver original
  1. CREATE TABLE `rotativas` (
  2.   `rotativas_id` int(1) NOT NULL auto_increment,
  3.   `id` int(1) NOT NULL,
  4.    PRIMARY KEY  (`rotativas_id`)
  5. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Y la consulta SQL sería de esta manera:

Código SQL:
Ver original
  1. SELECT * FROM rotativas, noticia WHERE rotativas.id =  noticia.id ORDER BY id DESC LIMIT 4;

Desde ya muchas gracias por su ayuda.

Última edición por gnzsoloyo; 08/04/2014 a las 03:33
  #2 (permalink)  
Antiguo 08/04/2014, 01:29
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Consulta para crear una tabla en mi base de datos

Y si simplemente en la tabla noticia agregas un campo booleano llamado rotativa, donde true implica que la noticia es rotativa y false ....

Solo tendrás que hacer un update sobre ese campo para pasar noticias de un lado al otro....

Creas (una sola vez) una vista que te permitirá trabajar solo con las rotativas.....

Código MySQL:
Ver original
  1. CREATE VIEW rotativas AS SELECT * FROM noticia WHERE rotativa=true;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 10/04/2014 a las 04:22
  #3 (permalink)  
Antiguo 09/04/2014, 20:42
 
Fecha de Ingreso: junio-2012
Mensajes: 30
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Consulta para crear una tabla en mi base de datos

Muchas gracias quimfv por tu ayuda, he me ayudaste a solucionar el problemas. Gracias

Etiquetas: null, select, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:47.